diff --git a/KangarooAppSdkCustomer.podspec b/KangarooAppSdkCustomer.podspec new file mode 100644 index 0000000..be83baf --- /dev/null +++ b/KangarooAppSdkCustomer.podspec @@ -0,0 +1,16 @@ +Pod::Spec.new do |spec| + spec.name = 'KangarooAppSdkCustomer' + spec.version = '1.0' + spec.homepage = 'https://kangaroorewards.com/' + spec.source = { :http=> ''} + spec.authors = '' + spec.license = '' + spec.summary = 'Kangaroo app SDK for building customer facing applications' + spec.vendored_frameworks = 'KangarooAppSdkCustomer.xcframework' + spec.libraries = 'c++' + + + + + +end \ No newline at end of file diff --git a/KangarooAppSdkCustomer.xcframework/Info.plist b/KangarooAppSdkCustomer.xcframework/Info.plist new file mode 100644 index 0000000..2c6dbb0 --- /dev/null +++ b/KangarooAppSdkCustomer.xcframework/Info.plist @@ -0,0 +1,43 @@ + + + + + AvailableLibraries + + + DebugSymbolsPath + dSYMs + LibraryIdentifier + ios-x86_64-simulator + LibraryPath + KangarooAppSdkCustomer.framework + SupportedArchitectures + + x86_64 + + SupportedPlatform + ios + SupportedPlatformVariant + simulator + + + DebugSymbolsPath + dSYMs + LibraryIdentifier + ios-arm64 + LibraryPath + KangarooAppSdkCustomer.framework + SupportedArchitectures + + arm64 + + SupportedPlatform + ios + + + CFBundlePackageType + XFWK + XCFrameworkFormatVersion + 1.0 + + diff --git a/KangarooAppSdkCustomer.xcframework/ios-arm64/KangarooAppSdkCustomer.framework/Headers/KangarooAppSdkCustomer.h b/KangarooAppSdkCustomer.xcframework/ios-arm64/KangarooAppSdkCustomer.framework/Headers/KangarooAppSdkCustomer.h new file mode 100644 index 0000000..baf6af2 --- /dev/null +++ b/KangarooAppSdkCustomer.xcframework/ios-arm64/KangarooAppSdkCustomer.framework/Headers/KangarooAppSdkCustomer.h @@ -0,0 +1,28329 @@ +#import +#import +#import +#import +#import +#import +#import + +@class KASCModelCompanion, KASCModel, KASCAuthenticationModelCompanion, KASCAuthenticationModel, KASCKotlinEnumCompanion, KASCKotlinEnum, KASCAuthenticationScope, KASCKotlinArray, KASCKotlinThrowable, KASCKotlinException, KASCSdkContext, KASCStately_concurrencyAtomicReference, KASCStately_concurrencyAtomicBoolean, KASCTokenStore, KASCNetworkRequestCompanion, KASCField, KASCHeader, KASCQuery, KASCFormField, KASCIOResult<__covariant T>, KASCKtor_client_coreHttpRequestBuilder, KASCKHttpClient, KASCKtor_client_coreHttpClient, KASCPathParameter, KASCUserReAuthenticationModelCompanion, KASCUserReAuthenticationModel, KASCModelOld, KASCResult<__covariant T>, KASCResultEmptyResponseCompanion, KASCResultEmptyResponse<__covariant T>, KASCResultMetaData, KASCResultIdle<__covariant T>, KASCResultLoadingCompanion, KASCResultLoading<__covariant T>, KASCResultSuccessCompanion, KASCResultSuccess<__covariant T>, KASCResultUnauthorizedErrorCompanion, KASCResultUnauthorizedError<__covariant T>, KASCResultUnknownErrorCompanion, KASCResultUnknownError<__covariant T>, KASCResultMetaDataCompanion, KASCSerializedResult<__covariant T>, KASCSerializedResultEmptyResponseCompanion, KASCSerializedResultEmptyResponse, KASCSerializedResultIdleCompanion, KASCSerializedResultIdle, KASCSerializedResultLoadingCompanion, KASCSerializedResultLoading, KASCSerializedResultSuccessCompanion, KASCSerializedResultSuccess, KASCSerializedResultUnauthorizedErrorCompanion, KASCSerializedResultUnauthorizedError, KASCSerializedResultUnknownErrorCompanion, KASCSerializedResultUnknownError, KASCConfiguration, KASCLanguage_, KASCTranslation, KASCRewardTranslation, KASCEmptyResponse, KASCKotlinNothing, KASCIOResultError, KASCIOResultConnectionError, KASCIOResultEmptyResponseCompanion, KASCIOResultEmptyResponse, KASCIOResultIdleCompanion, KASCIOResultIdle, KASCIOResultLoadingCompanion, KASCIOResultSuccess<__covariant T>, KASCIOResultTimeoutError, KASCIOResultUnauthorizedError, KASCIOResultUnknownError, KASCApi, KASCGetConglomerateNotificationPreferencesApiCompanion, KASCNotificationSettingsModel, KASCCFlow, KASCNotificationBusinessPayloadCompanion, KASCNotificationBusinessPayload, KASCNotificationSettingsDataCompanion, KASCNotificationSettingsData, KASCNotificationSettingsModelCompanion, KASCTiersApiCompanion, KASCUserProfileWithTierProgram, KASCLanguage__Companion, KASCLanguage__, KASCTierLevel, KASCTierCompanion, KASCTier, KASCTierPerk, KASCTierLevelTranslation, KASCTierLevelCompanion, KASCTierLevelTranslationCompanion, KASCTierPerkTranslation, KASCTierPerkCompanion, KASCTierPerkTranslationCompanion, KASCUserTierLevel, KASCTierProgress, KASCTierProgramIncludeCompanion, KASCTierProgramInclude, KASCTierProgressCompanion, KASCUserProfileDataModelCompanion, KASCUserProfileDataModel, KASCUserProfileWithTierProgramCompanion, KASCUserTierLevelCompanion, KASCUserBusinessProfileApiCompanion, KASCUserBusinessProfileModel, KASCBusinessCategoryCompanion, KASCBusinessCategory, KASCImage, KASCBusinessDataCompanion, KASCBusinessData, KASCImageCompanion, KASCLanguage___Companion, KASCLanguage___, KASCReferralProgramCompanion, KASCReferralProgram, KASCTierPerk_, KASCTierLevelTranslation_, KASCTierLevel_Companion, KASCTierLevel_, KASCTierLevelTranslation_Companion, KASCTierPerkTranslation_, KASCTierPerk_Companion, KASCTierPerkTranslation_Companion, KASCTierProgress_Companion, KASCTierProgress_, KASCUserBalanceCompanion, KASCUserBalance, KASCUserProfileInclude, KASCUserBusinessProfileModelCompanion, KASCUserProfileIncludeCompanion, KASCOfferFacebookShareApiCompanion, KASCUserProfileModel, KASCLanguage____Companion, KASCLanguage____, KASCReferralProgram_Companion, KASCReferralProgram_, KASCTierPerk__, KASCTierLevelTranslation__, KASCTierLevel__Companion, KASCTierLevel__, KASCTierLevelTranslation__Companion, KASCTierPerkTranslation__, KASCTierPerk__Companion, KASCTierPerkTranslation__Companion, KASCTierProgress__Companion, KASCTierProgress__, KASCUserBalance_Companion, KASCUserBalance_, KASCUserProfileDataModel_Companion, KASCUserProfileDataModel_, KASCUserProfileInclude_Companion, KASCUserProfileInclude_, KASCUserProfileModelCompanion, KASCUserProfileApiCompanion, KASCUserProfileModel_, KASCLanguage_____Companion, KASCLanguage_____, KASCReferralProgram__Companion, KASCReferralProgram__, KASCTierPerk___, KASCTierLevelTranslation___, KASCTierLevel___Companion, KASCTierLevel___, KASCTierLevelTranslation___Companion, KASCTierPerkTranslation___, KASCTierPerk___Companion, KASCTierPerkTranslation___Companion, KASCTierProgress___Companion, KASCTierProgress___, KASCUserBalance__Companion, KASCUserBalance__, KASCUserProfileDataModel__Companion, KASCUserProfileDataModel__, KASCUserProfileInclude__Companion, KASCUserProfileInclude__, KASCUserProfileModel_Companion, KASCUserCheckInApiCompanion, KASCCheckInResponseModel, KASCCheckInRequest, KASCCheckInDataModelCompanion, KASCCheckInDataModel, KASCCheckInRequestCompanion, KASCCheckInResponseModelCompanion, KASCAlaCarteProductsApiCompanion, KASCAlaCarteProductsModel, KASCProduct, KASCAlaCarteItemModelCompanion, KASCAlaCarteItemModel, KASCUserProfileDataModel___, KASCUserAlaCarteIncluded, KASCAlaCarteProductsModelCompanion, KASCImagesCompanion, KASCImages, KASCLanguage______Companion, KASCLanguage______, KASCLanguagesCompanion, KASCLanguages, KASCProductCompanion, KASCUserAlaCarteIncludedCompanion, KASCUserProfileDataModel___Companion, KASCUserBusinessRewardsApiCompanion, KASCUserBusinessRewardsModel, KASCBusinessCategory_Companion, KASCBusinessCategory_, KASCImage_, KASCBusinessData_Companion, KASCBusinessData_, KASCImage_Companion, KASCLanguage_______Companion, KASCLanguage_______, KASCRewardTranslation_, KASCRewardModelCompanion, KASCRewardModel, KASCRewardTranslation_Companion, KASCUserRewardsData, KASCUserBusinessRewardsModelCompanion, KASCUserRewardsDataCompanion, KASCUserBusinessAlaCarteProductsApiCompanion, KASCAlaCarteProductsModel_, KASCProduct_, KASCAlaCarteItemModel_Companion, KASCAlaCarteItemModel_, KASCUserProfileDataModel____, KASCUserAlaCarteIncluded_, KASCAlaCarteProductsModel_Companion, KASCImages_Companion, KASCImages_, KASCLanguage________Companion, KASCLanguage________, KASCLanguages_Companion, KASCLanguages_, KASCProduct_Companion, KASCUserAlaCarteIncluded_Companion, KASCUserProfileDataModel____Companion, KASCUserProfileUpdateApiCompanion, KASCUserProfileModel__, KASCLanguage_________Companion, KASCLanguage_________, KASCReferralProgram___Companion, KASCReferralProgram___, KASCTierPerk____, KASCTierLevelTranslation____, KASCTierLevel____Companion, KASCTierLevel____, KASCTierLevelTranslation____Companion, KASCTierPerkTranslation____, KASCTierPerk____Companion, KASCTierPerkTranslation____Companion, KASCTierProgress____Companion, KASCTierProgress____, KASCUserBalance___Companion, KASCUserBalance___, KASCUserProfileDataModel_____Companion, KASCUserProfileDataModel_____, KASCUserProfileInclude___Companion, KASCUserProfileInclude___, KASCUserProfileModel__Companion, KASCGiftCardDepositApiCompanion, KASCTransferActionResultModel, KASCImage__Companion, KASCImage__, KASCLanguage__________Companion, KASCLanguage__________, KASCOfferActionCompanion, KASCOfferAction, KASCOfferTranslation, KASCOfferModelCompanion, KASCOfferModel, KASCOfferTranslationCompanion, KASCTransferMessage, KASCTransferActionResultModelCompanion, KASCTransferMessageGiftCardQueue, KASCTransferMessageActions, KASCTransferMessageCompanion, KASCTransferMessageActionsCompanion, KASCTransferMessageGiftCardQueueCompanion, KASCPublicAlaCarteProductsApiCompanion, KASCPublicALaCarteProductsModel, KASCProduct__, KASCAlaCarteItemModel__Companion, KASCAlaCarteItemModel__, KASCImages__Companion, KASCImages__, KASCLanguage___________Companion, KASCLanguage___________, KASCLanguages__Companion, KASCLanguages__, KASCProduct__Companion, KASCPublicALaCarteProductsModelCompanion, KASCPayPalPaymentApiCompanion, KASCPayPalPaymentModel, KASCPayPalPaymentGiftCard, KASCPayPalPaymentCompanion, KASCPayPalPayment, KASCPayPalPaymentGiftCardCompanion, KASCPayPalPaymentModelCompanion, KASCSocialMediaActionPerformApiCompanion, KASCPerformSocialMediaActionResponseModel, KASCPerformSocialMediaActionRequestModel, KASCPerformActionResponseModelCompanion, KASCPerformActionResponseModel, KASCPerformSocialMediaActionRequestModelCompanion, KASCPerformSocialMediaActionResponseModelCompanion, KASCRedeemRewardsApiCompanion, KASCRedeemResponseModel, KASCRedeemRequest, KASCLanguage____________Companion, KASCLanguage____________, KASCRedemptionModel, KASCRedeemRequestCompanion, KASCUserProfileModel___, KASCRedeemResponseDataCompanion, KASCRedeemResponseData, KASCRedeemResponseModelCompanion, KASCRedemptionModelCompanion, KASCReferralProgram____Companion, KASCReferralProgram____, KASCTierPerk_____, KASCTierLevelTranslation_____, KASCTierLevel_____Companion, KASCTierLevel_____, KASCTierLevelTranslation_____Companion, KASCTierPerkTranslation_____, KASCTierPerk_____Companion, KASCTierPerkTranslation_____Companion, KASCTierProgress_____Companion, KASCTierProgress_____, KASCUserBalance____Companion, KASCUserBalance____, KASCUserProfileDataModel______Companion, KASCUserProfileDataModel______, KASCUserProfileInclude____Companion, KASCUserProfileInclude____, KASCUserProfileModel___Companion, KASCPublicProductsApiCompanion, KASCPublicProductsModel, KASCImages___Companion, KASCImages___, KASCLanguage_____________Companion, KASCLanguage_____________, KASCLanguages___Companion, KASCLanguages___, KASCProduct___Companion, KASCProduct___, KASCPublicProductsModelCompanion, KASCUserRewardsApiCompanion, KASCUserRewardsModel, KASCImage___Companion, KASCImage___, KASCLanguage______________Companion, KASCLanguage______________, KASCRewardTranslation__, KASCRewardModel_Companion, KASCRewardModel_, KASCRewardTranslation__Companion, KASCUserRewardsData_Companion, KASCUserRewardsData_, KASCUserRewardsModelCompanion, KASCBannersApiCompanion, KASCBannersModel, KASCLanguage_______________, KASCBannerCompanion, KASCBanner, KASCBannersModelCompanion, KASCLanguage_______________Companion, KASCBalanceTransferApiCompanion, KASCTransferResponseModel, KASCTransferRequestModel, KASCUserProfileDataModel_______, KASCTransferDataModelCompanion, KASCTransferDataModel, KASCTransferRequestFromCompanion, KASCTransferRequestFrom, KASCTransferRequestTo, KASCTransferRequestModelCompanion, KASCTransferRequestToCompanion, KASCTransferResponseModelCompanion, KASCUserProfileDataModel_______Companion, KASCGiftCardsApiCompanion, KASCGiftCardsModel, KASCGiftCardActionCompanion, KASCGiftCardAction, KASCImage____, KASCGiftCardTranslation, KASCGiftCardModelCompanion, KASCGiftCardModel, KASCLanguage________________, KASCGiftCardTranslationCompanion, KASCGiftCardsModelCompanion, KASCImage____Companion, KASCLanguage________________Companion, KASCBusinessesApiCompanion, KASCBusinesses, KASCBusinessCategory__Companion, KASCBusinessCategory__, KASCImage_____, KASCBusinessData__Companion, KASCBusinessData__, KASCBusinessesCompanion, KASCImage_____Companion, KASCUserCouponsApiCompanion, KASCUserCouponsModel, KASCOfferModel_, KASCCouponModelCompanion, KASCCouponModel, KASCImage______Companion, KASCImage______, KASCLanguage_________________Companion, KASCLanguage_________________, KASCOfferAction_Companion, KASCOfferAction_, KASCOfferTranslation_, KASCOfferModel_Companion, KASCOfferTranslation_Companion, KASCUserCouponsModelCompanion, KASCUserBusinessSocialMediaLinksApiCompanion, KASCSocialMediaLinksModel, KASCBusinessActionModelCompanion, KASCBusinessActionModel, KASCSocialMediaModel, KASCSocialMediaLinksIncludedCompanion, KASCSocialMediaLinksIncluded, KASCUserProfileDataModel________, KASCSocialMediaLinksModelCompanion, KASCSocialMediaModelCompanion, KASCUserProfileDataModel________Companion, KASCRedeemCouponsApiCompanion, KASCCouponRedemptionResponseModel, KASCRedeemCouponRequest, KASCCouponRedemptionModelCompanion, KASCCouponRedemptionModel, KASCUserProfileModel____, KASCCouponRedemptionResponseDataCompanion, KASCCouponRedemptionResponseData, KASCCouponRedemptionResponseModelCompanion, KASCLanguage__________________Companion, KASCLanguage__________________, KASCOfferRedemptionModelCompanion, KASCOfferRedemptionModel, KASCRedeemCouponRequestCompanion, KASCReferralProgram_____Companion, KASCReferralProgram_____, KASCTierPerk______, KASCTierLevelTranslation______, KASCTierLevel______Companion, KASCTierLevel______, KASCTierLevelTranslation______Companion, KASCTierPerkTranslation______, KASCTierPerk______Companion, KASCTierPerkTranslation______Companion, KASCTierProgress______Companion, KASCTierProgress______, KASCUserBalance_____Companion, KASCUserBalance_____, KASCUserProfileDataModel_________Companion, KASCUserProfileDataModel_________, KASCUserProfileInclude_____Companion, KASCUserProfileInclude_____, KASCUserProfileModel____Companion, KASCUserDeleteApiCompanion, KASCGetNotificationPreferencesApiCompanion, KASCNotificationSettingsModel_, KASCNotificationBusinessPayload_Companion, KASCNotificationBusinessPayload_, KASCNotificationSettingsData_Companion, KASCNotificationSettingsData_, KASCNotificationSettingsModel_Companion, KASCUserUnsubscribeApiCompanion, KASCUserDetailsApiCompanion, KASCUserDetailsModel, KASCUserProfileDataModel__________, KASCUserDetailsModelCompanion, KASCUserProfileDataModel__________Companion, KASCBranchesApiCompanion, KASCBusiness, KASCBranchPhone, KASCImage_______, KASCBranchAddress, KASCBranchCompanion, KASCBranch, KASCBranchAddressCompanion, KASCBranchPhoneCompanion, KASCBusinessData___, KASCBusinessBranchesData, KASCBusinessCompanion, KASCBusinessBranchesDataCompanion, KASCBusinessCategory___Companion, KASCBusinessCategory___, KASCBusinessData___Companion, KASCImage_______Companion, KASCUserScanReceiptApiCompanion, KASCScanReceiptResponseModel, KASCScanReceiptRequest, KASCScanReceiptRequestCompanion, KASCScanReceiptResponseModelCompanion, KASCGetSpinToWinPrizesApiCompanion, KASCSpinToWinPrizesModel, KASCPrizeModelCompanion, KASCPrizeModel, KASCSpinToWinPrizesDataCompanion, KASCSpinToWinPrizesData, KASCSpinToWinPrizesModelCompanion, KASCGiftCardPurchaseApiCompanion, KASCGiftCardPayPalPaymentResponseModel, KASCGiftCardPurchaseRequest, KASCGiftCardPayPalPaymentCompanion, KASCGiftCardPayPalPayment, KASCGiftCardPurchaseResponseGiftCardData, KASCUserBalance______, KASCGiftCardPayPalPaymentResponseDataCompanion, KASCGiftCardPayPalPaymentResponseData, KASCGiftCardPayPalPaymentResponseModelCompanion, KASCGiftCardPurchaseRequestCompanion, KASCGiftCardPurchaseResponseGiftCardDataCompanion, KASCUserBalance______Companion, KASCUserBusinessBannersApiCompanion, KASCUserBusinessBannersModel, KASCLanguage___________________, KASCBanner_Companion, KASCBanner_, KASCBusinessCategory____Companion, KASCBusinessCategory____, KASCImage________, KASCBusinessData____Companion, KASCBusinessData____, KASCImage________Companion, KASCLanguage___________________Companion, KASCUserBusinessBannersIncludedCompanion, KASCUserBusinessBannersIncluded, KASCUserBusinessBannersModelCompanion, KASCUserOffersApiCompanion, KASCUserOffersModel, KASCImage_________Companion, KASCImage_________, KASCLanguage____________________Companion, KASCLanguage____________________, KASCOfferAction__Companion, KASCOfferAction__, KASCOfferTranslation__, KASCOfferModel__Companion, KASCOfferModel__, KASCOfferTranslation__Companion, KASCUserOffersModelCompanion, KASCUpdateDefaultBusinessIdApiCompanion, KASCDefaultBusiness, KASCDefaultBusinessData, KASCDefaultBusinessCompanion, KASCDefaultBusinessDataCompanion, KASCUserPinResetRequestApiCompanion, KASCUserPinResetRequest, KASCUserPinResetRequestCompanion, KASCClaimOfferApiCompanion, KASCClaimedOfferModel, KASCOfferModel___, KASCClaimedOfferModelCompanion, KASCImage__________Companion, KASCImage__________, KASCLanguage_____________________Companion, KASCLanguage_____________________, KASCOfferAction___Companion, KASCOfferAction___, KASCOfferTranslation___, KASCOfferModel___Companion, KASCOfferTranslation___Companion, KASCUserTransactionHistoryApiCompanion, KASCUserTransactionHistoryModel, KASCTransactionCompanion, KASCTransaction, KASCUserTransactionHistoryModelCompanion, KASCSocialMediaLinksApiCompanion, KASCSocialMediaLinksModel_, KASCBusinessActionModel_Companion, KASCBusinessActionModel_, KASCSocialMediaModel_, KASCSocialMediaLinksIncluded_Companion, KASCSocialMediaLinksIncluded_, KASCUserProfileDataModel___________, KASCSocialMediaLinksModel_Companion, KASCSocialMediaModel_Companion, KASCUserProfileDataModel___________Companion, KASCUserProductsApiCompanion, KASCUserProductsModel, KASCImages____Companion, KASCImages____, KASCLanguage______________________Companion, KASCLanguage______________________, KASCLanguages____Companion, KASCLanguages____, KASCProduct____Companion, KASCProduct____, KASCUserProductsIncludedCompanion, KASCUserProductsIncluded, KASCUserProfileDataModel____________, KASCUserProductsModelCompanion, KASCUserProfileDataModel____________Companion, KASCUserRegistrationApiCompanion, KASCUserProfileDataModel_____________, KASCUserProfileDataModel_____________Companion, KASCBusinessApiCompanion, KASCBusiness_, KASCBranchPhone_, KASCImage___________, KASCBranchAddress_, KASCBranch_Companion, KASCBranch_, KASCBranchAddress_Companion, KASCBranchPhone_Companion, KASCBusinessData_____, KASCBusinessBranchesData_, KASCBusiness_Companion, KASCBusinessBranchesData_Companion, KASCBusinessCategory_____Companion, KASCBusinessCategory_____, KASCBusinessData_____Companion, KASCImage___________Companion, KASCPublicBusinessSettingsApiCompanion, KASCPublicBusinessSettings, KASCBusinessCategory______Companion, KASCBusinessCategory______, KASCImage____________, KASCBusinessData______Companion, KASCBusinessData______, KASCImage____________Companion, KASCPublicBusinessSettingsData, KASCPublicBusinessSettingsCompanion, KASCPublicBusinessSettingsDataCompanion, KASCGetDefaultBusinessIdApiCompanion, KASCDefaultBusiness_, KASCDefaultBusinessData_, KASCDefaultBusiness_Companion, KASCDefaultBusinessData_Companion, KASCUserBusinessFrequentBuyerProgramsApiCompanion, KASCFrequentBuyerProgramsModel, KASCFrequentBuyerProgramModelCompanion, KASCFrequentBuyerProgramModel, KASCFrequentBuyerProgramsIncludedCompanion, KASCFrequentBuyerProgramsIncluded, KASCUserProfileDataModel______________, KASCFrequentBuyerProgramsModelCompanion, KASCUserProfileDataModel______________Companion, KASCPublicBranchesApiCompanion, KASCPublicBranchesModel, KASCBranchPhone__, KASCImage_____________, KASCBranchAddress__, KASCBranch__Companion, KASCBranch__, KASCBranchAddress__Companion, KASCBranchPhone__Companion, KASCImage_____________Companion, KASCPublicBranchesModelCompanion, KASCUserPinUpdateApiCompanion, KASCUserProfileModel_____, KASCUpdatePinRequest, KASCLanguage_______________________Companion, KASCLanguage_______________________, KASCReferralProgram______Companion, KASCReferralProgram______, KASCTierPerk_______, KASCTierLevelTranslation_______, KASCTierLevel_______Companion, KASCTierLevel_______, KASCTierLevelTranslation_______Companion, KASCTierPerkTranslation_______, KASCTierPerk_______Companion, KASCTierPerkTranslation_______Companion, KASCTierProgress_______Companion, KASCTierProgress_______, KASCUpdatePinRequestCompanion, KASCUserBalance_______Companion, KASCUserBalance_______, KASCUserProfileDataModel_______________Companion, KASCUserProfileDataModel_______________, KASCUserProfileInclude______Companion, KASCUserProfileInclude______, KASCUserProfileModel_____Companion, KASCPushTokenRegistrationApiCompanion, KASCUserProfileModel______, KASCLanguage________________________Companion, KASCLanguage________________________, KASCReferralProgram_______Companion, KASCReferralProgram_______, KASCTierPerk________, KASCTierLevelTranslation________, KASCTierLevel________Companion, KASCTierLevel________, KASCTierLevelTranslation________Companion, KASCTierPerkTranslation________, KASCTierPerk________Companion, KASCTierPerkTranslation________Companion, KASCTierProgress________Companion, KASCTierProgress________, KASCUserBalance________Companion, KASCUserBalance________, KASCUserProfileDataModel________________Companion, KASCUserProfileDataModel________________, KASCUserProfileInclude_______Companion, KASCUserProfileInclude_______, KASCUserProfileModel______Companion, KASCUserBusinessOffersApiCompanion, KASCUserBusinessOffersModel, KASCBusinessCategory_______Companion, KASCBusinessCategory_______, KASCImage______________, KASCBusinessData_______Companion, KASCBusinessData_______, KASCImage______________Companion, KASCLanguage_________________________Companion, KASCLanguage_________________________, KASCOfferAction____Companion, KASCOfferAction____, KASCOfferTranslation____, KASCOfferModel____Companion, KASCOfferModel____, KASCOfferTranslation____Companion, KASCUserBusinessOffersIncludedCompanion, KASCUserBusinessOffersIncluded, KASCUserBusinessOffersModelCompanion, KASCPublicBannersApiCompanion, KASCBannersModel_, KASCLanguage__________________________, KASCBanner__Companion, KASCBanner__, KASCBannersModel_Companion, KASCLanguage__________________________Companion, KASCUpdateNotificationPreferencesApiCompanion, KASCNotificationSettingsModel__, KASCNotificationSettingsData__, KASCNotificationBusinessPayload__Companion, KASCNotificationBusinessPayload__, KASCNotificationSettingsData__Companion, KASCNotificationSettingsModel__Companion, KASCUserBusinessProductsApiCompanion, KASCUserProductsModel_, KASCImages_____Companion, KASCImages_____, KASCLanguage___________________________Companion, KASCLanguage___________________________, KASCLanguages_____Companion, KASCLanguages_____, KASCProduct_____Companion, KASCProduct_____, KASCUserProductsIncluded_Companion, KASCUserProductsIncluded_, KASCUserProfileDataModel_________________, KASCUserProductsModel_Companion, KASCUserProfileDataModel_________________Companion, KASCUserUsedCouponsApiCompanion, KASCUserCouponsModel_, KASCOfferModel_____, KASCCouponModel_Companion, KASCCouponModel_, KASCImage_______________Companion, KASCImage_______________, KASCLanguage____________________________Companion, KASCLanguage____________________________, KASCOfferAction_____Companion, KASCOfferAction_____, KASCOfferTranslation_____, KASCOfferModel_____Companion, KASCOfferTranslation_____Companion, KASCUserCouponsModel_Companion, KASCUserAuthenticationApiCompanion, KASCUserAuthenticationModel, KASCUserAuthenticationModelCompanion, KASCFrequentBuyerProgramsApiCompanion, KASCFrequentBuyerProgramsModel_, KASCFrequentBuyerProgramModel_Companion, KASCFrequentBuyerProgramModel_, KASCFrequentBuyerProgramsIncluded_Companion, KASCFrequentBuyerProgramsIncluded_, KASCUserProfileDataModel__________________, KASCFrequentBuyerProgramsModel_Companion, KASCUserProfileDataModel__________________Companion, KASCTransferRecallApiCompanion, KASCTransferActionResultModel_, KASCImage________________Companion, KASCImage________________, KASCLanguage_____________________________Companion, KASCLanguage_____________________________, KASCOfferAction______Companion, KASCOfferAction______, KASCOfferTranslation______, KASCOfferModel______Companion, KASCOfferModel______, KASCOfferTranslation______Companion, KASCTransferMessage_, KASCTransferActionResultModel_Companion, KASCTransferMessageGiftCardQueue_, KASCTransferMessageActions_, KASCTransferMessage_Companion, KASCTransferMessageActions_Companion, KASCTransferMessageGiftCardQueue_Companion, KASCCampaignMessagesApiCompanion, KASCCampaignMessagesModel, KASCBusinessCategory________Companion, KASCBusinessCategory________, KASCImage_________________, KASCBusinessData________Companion, KASCBusinessData________, KASCOfferModel_______, KASCCampaignCompanion, KASCCampaign, KASCCampaignMessageCompanion, KASCCampaignMessage, KASCCampaignMessagesModelCompanion, KASCImage_________________Companion, KASCLanguage______________________________Companion, KASCLanguage______________________________, KASCOfferAction_______Companion, KASCOfferAction_______, KASCOfferTranslation_______, KASCOfferModel_______Companion, KASCOfferTranslation_______Companion, KASCUserPinResetApiCompanion, KASCUserAccountVerificationApiCompanion, KASCUserProfileModel_______, KASCLanguage_______________________________Companion, KASCLanguage_______________________________, KASCReferralProgram________Companion, KASCReferralProgram________, KASCTierPerk_________, KASCTierLevelTranslation_________, KASCTierLevel_________Companion, KASCTierLevel_________, KASCTierLevelTranslation_________Companion, KASCTierPerkTranslation_________, KASCTierPerk_________Companion, KASCTierPerkTranslation_________Companion, KASCTierProgress_________Companion, KASCTierProgress_________, KASCUserBalance_________Companion, KASCUserBalance_________, KASCUserProfileDataModel___________________Companion, KASCUserProfileDataModel___________________, KASCUserProfileInclude________Companion, KASCUserProfileInclude________, KASCUserProfileModel_______Companion, KASCCountriesApiCompanion, KASCCountries, KASCCountry, KASCCountriesCompanion, KASCCountryCompanion, KASCPublicOffersApiCompanion, KASCUserOffersModel_, KASCImage__________________Companion, KASCImage__________________, KASCLanguage________________________________Companion, KASCLanguage________________________________, KASCOfferAction________Companion, KASCOfferAction________, KASCOfferTranslation________, KASCOfferModel________Companion, KASCOfferModel________, KASCOfferTranslation________Companion, KASCUserOffersModel_Companion, KASCStringsApiCompanion, KASCApplicationStringsModel, KASCApplicationStringCompanion, KASCApplicationString, KASCApplicationStringsModelCompanion, KASCUserBusinessGiftCardsApiCompanion, KASCUserBusinessGiftCardsModel, KASCBusinessCategory_________Companion, KASCBusinessCategory_________, KASCImage___________________, KASCBusinessData_________Companion, KASCBusinessData_________, KASCGiftCardAction_Companion, KASCGiftCardAction_, KASCGiftCardTranslation_, KASCGiftCardModel_Companion, KASCGiftCardModel_, KASCLanguage_________________________________, KASCGiftCardTranslation_Companion, KASCImage___________________Companion, KASCLanguage_________________________________Companion, KASCUserBusinessGiftCardsIncludedCompanion, KASCUserBusinessGiftCardsIncluded, KASCUserBusinessGiftCardsModelCompanion, KASCTransferMessagesApiCompanion, KASCTransferMessagesModel, KASCImage____________________Companion, KASCImage____________________, KASCLanguage__________________________________Companion, KASCLanguage__________________________________, KASCOfferAction_________Companion, KASCOfferAction_________, KASCOfferTranslation_________, KASCOfferModel_________Companion, KASCOfferModel_________, KASCOfferTranslation_________Companion, KASCTransferMessageGiftCardQueue__, KASCTransferMessageActions__, KASCTransferMessage__Companion, KASCTransferMessage__, KASCTransferMessageActions__Companion, KASCTransferMessageGiftCardQueue__Companion, KASCTransferMessagesModelCompanion, KASCPublicRewardsApiCompanion, KASCPublicRewardsModel, KASCImage_____________________Companion, KASCImage_____________________, KASCLanguage___________________________________Companion, KASCLanguage___________________________________, KASCRewardModel__, KASCPublicRewardsModelCompanion, KASCRewardTranslation___, KASCRewardModel__Companion, KASCRewardTranslation___Companion, KASCKtor_client_coreHttpResponse, KASCKtor_client_authBearerTokens, KASCKtor_client_authRefreshTokensParams, KASCKotlinUnit, KASCKotlinRuntimeException, KASCKotlinIllegalStateException, KASCKtor_httpHeadersBuilder, KASCKtor_client_coreHttpRequestBuilderCompanion, KASCKtor_client_coreHttpRequestData, KASCKtor_httpURLBuilder, KASCKtor_utilsTypeInfo, KASCKtor_httpHttpMethod, KASCKtor_client_coreHttpClientEngineConfig, KASCKtor_client_coreHttpClientConfig, KASCKtor_eventsEvents, KASCKtor_client_coreHttpReceivePipeline, KASCKtor_client_coreHttpRequestPipeline, KASCKtor_client_coreHttpResponsePipeline, KASCKtor_client_coreHttpSendPipeline, KASCKtor_client_coreHttpClientCall, KASCKtor_utilsGMTDate, KASCKtor_httpHttpStatusCode, KASCKtor_httpHttpProtocolVersion, KASCKotlinx_serialization_coreSerializersModule, KASCKotlinx_serialization_coreSerialKind, KASCKtor_utilsStringValuesBuilderImpl, KASCKtor_httpUrl, KASCKtor_httpOutgoingContent, KASCKtor_utilsAttributeKey, KASCKtor_httpURLProtocol, KASCKtor_httpURLBuilderCompanion, KASCKotlinCancellationException, KASCKtor_httpHttpMethodCompanion, KASCKtor_client_coreHttpResponseData, KASCKotlinx_coroutines_coreCoroutineDispatcher, KASCKtor_client_coreProxyConfig, KASCKtor_eventsEventDefinition, KASCKtor_utilsPipelinePhase, KASCKtor_utilsPipeline, KASCKtor_client_coreHttpReceivePipelinePhases, KASCKtor_client_coreHttpRequestPipelinePhases, KASCKtor_client_coreHttpResponsePipelinePhases, KASCKtor_client_coreHttpResponseContainer, KASCKtor_client_coreHttpSendPipelinePhases, KASCKtor_client_coreHttpClientCallCompanion, KASCKtor_ioMemory, KASCKtor_ioChunkBuffer, KASCKotlinByteArray, KASCKtor_ioBuffer, KASCKtor_ioByteReadPacket, KASCKtor_utilsGMTDateCompanion, KASCKtor_utilsWeekDay, KASCKtor_utilsMonth, KASCKtor_httpHttpStatusCodeCompanion, KASCKtor_httpHttpProtocolVersionCompanion, KASCKtor_httpUrlCompanion, KASCKtor_httpContentType, KASCKtor_httpURLProtocolCompanion, KASCKotlinKTypeProjection, KASCKotlinAbstractCoroutineContextElement, KASCKotlinx_coroutines_coreCoroutineDispatcherKey, KASCKtor_ioMemoryCompanion, KASCKtor_ioBufferCompanion, KASCKtor_ioChunkBufferCompanion, KASCKotlinByteIterator, KASCKtor_ioInputCompanion, KASCKtor_ioInput, KASCKtor_ioByteReadPacketCompanion, KASCKtor_utilsWeekDayCompanion, KASCKtor_utilsMonthCompanion, KASCKtor_httpHeaderValueParam, KASCKtor_httpHeaderValueWithParametersCompanion, KASCKtor_httpHeaderValueWithParameters, KASCKtor_httpContentTypeCompanion, KASCKotlinKVariance, KASCKotlinKTypeProjectionCompanion, KASCKotlinx_coroutines_coreAtomicDesc, KASCKotlinx_coroutines_coreLockFreeLinkedListNodePrepareOp, KASCKotlinAbstractCoroutineContextKey, KASCKotlinx_coroutines_coreAtomicOp<__contravariant T>, KASCKotlinx_coroutines_coreOpDescriptor, KASCKotlinx_coroutines_coreLockFreeLinkedListNode, KASCKotlinx_coroutines_coreLockFreeLinkedListNodeAbstractAtomicDesc, KASCKotlinx_coroutines_coreLockFreeLinkedListNodeAddLastDesc, KASCKotlinx_coroutines_coreLockFreeLinkedListNodeRemoveFirstDesc; + +@protocol KASCKotlinx_serialization_coreKSerializer, KASCKotlinComparable, KASCKotlinSuspendFunction0, KASCKotlinx_coroutines_coreFlowCollector, KASCKotlinx_coroutines_coreFlow, KASCKtor_ioCloseable, KASCKotlinx_serialization_coreEncoder, KASCKotlinx_serialization_coreSerialDescriptor, KASCKotlinx_serialization_coreSerializationStrategy, KASCKotlinx_serialization_coreDecoder, KASCKotlinx_serialization_coreDeserializationStrategy, KASCKotlinIterator, KASCKotlinFunction, KASCKtor_httpHttpMessageBuilder, KASCKtor_client_coreHttpClientEngineCapability, KASCKtor_utilsAttributes, KASCKotlinx_coroutines_coreJob, KASCKotlinCoroutineContext, KASCKotlinx_coroutines_coreCoroutineScope, KASCKtor_client_coreHttpClientEngine, KASCKtor_httpHeaders, KASCKtor_httpHttpMessage, KASCKtor_ioByteReadChannel, KASCKotlinx_serialization_coreCompositeEncoder, KASCKotlinAnnotation, KASCKotlinx_serialization_coreCompositeDecoder, KASCKtor_utilsStringValues, KASCKotlinMapEntry, KASCKtor_utilsStringValuesBuilder, KASCKtor_httpParameters, KASCKtor_httpParametersBuilder, KASCKotlinKClass, KASCKotlinKType, KASCKotlinx_coroutines_coreChildHandle, KASCKotlinx_coroutines_coreChildJob, KASCKotlinx_coroutines_coreDisposableHandle, KASCKotlinSequence, KASCKotlinx_coroutines_coreSelectClause0, KASCKotlinCoroutineContextKey, KASCKotlinCoroutineContextElement, KASCKtor_client_coreHttpClientPlugin, KASCKotlinSuspendFunction2, KASCKtor_client_coreHttpRequest, KASCKtor_ioReadSession, KASCKotlinSuspendFunction1, KASCKotlinAppendable, KASCKotlinx_serialization_coreSerializersModuleCollector, KASCKotlinKDeclarationContainer, KASCKotlinKAnnotatedElement, KASCKotlinKClassifier, KASCKotlinx_coroutines_coreParentJob, KASCKotlinx_coroutines_coreSelectInstance, KASCKotlinContinuation, KASCKotlinContinuationInterceptor, KASCKotlinx_coroutines_coreRunnable, KASCKtor_ioObjectPool; + +NS_ASSUME_NONNULL_BEGIN +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wunknown-warning-option" +#pragma clang diagnostic ignored "-Wincompatible-property-type" +#pragma clang diagnostic ignored "-Wnullability" + +#pragma push_macro("_Nullable_result") +#if !__has_feature(nullability_nullable_result) +#undef _Nullable_result +#define _Nullable_result _Nullable +#endif + +__attribute__((swift_name("KotlinBase"))) +@interface KASCBase : NSObject +- (instancetype)init __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); ++ (void)initialize __attribute__((objc_requires_super)); +@end + +@interface KASCBase (KASCBaseCopying) +@end + +__attribute__((swift_name("KotlinMutableSet"))) +@interface KASCMutableSet : NSMutableSet +@end + +__attribute__((swift_name("KotlinMutableDictionary"))) +@interface KASCMutableDictionary : NSMutableDictionary +@end + +@interface NSError (NSErrorKASCKotlinException) +@property (readonly) id _Nullable kotlinException; +@end + +__attribute__((swift_name("KotlinNumber"))) +@interface KASCNumber : NSNumber +- (instancetype)initWithChar:(char)value __attribute__((unavailable)); +- (instancetype)initWithUnsignedChar:(unsigned char)value __attribute__((unavailable)); +- (instancetype)initWithShort:(short)value __attribute__((unavailable)); +- (instancetype)initWithUnsignedShort:(unsigned short)value __attribute__((unavailable)); +- (instancetype)initWithInt:(int)value __attribute__((unavailable)); +- (instancetype)initWithUnsignedInt:(unsigned int)value __attribute__((unavailable)); +- (instancetype)initWithLong:(long)value __attribute__((unavailable)); +- (instancetype)initWithUnsignedLong:(unsigned long)value __attribute__((unavailable)); +- (instancetype)initWithLongLong:(long long)value __attribute__((unavailable)); +- (instancetype)initWithUnsignedLongLong:(unsigned long long)value __attribute__((unavailable)); +- (instancetype)initWithFloat:(float)value __attribute__((unavailable)); +- (instancetype)initWithDouble:(double)value __attribute__((unavailable)); +- (instancetype)initWithBool:(BOOL)value __attribute__((unavailable)); +- (instancetype)initWithInteger:(NSInteger)value __attribute__((unavailable)); +- (instancetype)initWithUnsignedInteger:(NSUInteger)value __attribute__((unavailable)); ++ (instancetype)numberWithChar:(char)value __attribute__((unavailable)); ++ (instancetype)numberWithUnsignedChar:(unsigned char)value __attribute__((unavailable)); ++ (instancetype)numberWithShort:(short)value __attribute__((unavailable)); ++ (instancetype)numberWithUnsignedShort:(unsigned short)value __attribute__((unavailable)); ++ (instancetype)numberWithInt:(int)value __attribute__((unavailable)); ++ (instancetype)numberWithUnsignedInt:(unsigned int)value __attribute__((unavailable)); ++ (instancetype)numberWithLong:(long)value __attribute__((unavailable)); ++ (instancetype)numberWithUnsignedLong:(unsigned long)value __attribute__((unavailable)); ++ (instancetype)numberWithLongLong:(long long)value __attribute__((unavailable)); ++ (instancetype)numberWithUnsignedLongLong:(unsigned long long)value __attribute__((unavailable)); ++ (instancetype)numberWithFloat:(float)value __attribute__((unavailable)); ++ (instancetype)numberWithDouble:(double)value __attribute__((unavailable)); ++ (instancetype)numberWithBool:(BOOL)value __attribute__((unavailable)); ++ (instancetype)numberWithInteger:(NSInteger)value __attribute__((unavailable)); ++ (instancetype)numberWithUnsignedInteger:(NSUInteger)value __attribute__((unavailable)); +@end + +__attribute__((swift_name("KotlinByte"))) +@interface KASCByte : KASCNumber +- (instancetype)initWithChar:(char)value; ++ (instancetype)numberWithChar:(char)value; +@end + +__attribute__((swift_name("KotlinUByte"))) +@interface KASCUByte : KASCNumber +- (instancetype)initWithUnsignedChar:(unsigned char)value; ++ (instancetype)numberWithUnsignedChar:(unsigned char)value; +@end + +__attribute__((swift_name("KotlinShort"))) +@interface KASCShort : KASCNumber +- (instancetype)initWithShort:(short)value; ++ (instancetype)numberWithShort:(short)value; +@end + +__attribute__((swift_name("KotlinUShort"))) +@interface KASCUShort : KASCNumber +- (instancetype)initWithUnsignedShort:(unsigned short)value; ++ (instancetype)numberWithUnsignedShort:(unsigned short)value; +@end + +__attribute__((swift_name("KotlinInt"))) +@interface KASCInt : KASCNumber +- (instancetype)initWithInt:(int)value; ++ (instancetype)numberWithInt:(int)value; +@end + +__attribute__((swift_name("KotlinUInt"))) +@interface KASCUInt : KASCNumber +- (instancetype)initWithUnsignedInt:(unsigned int)value; ++ (instancetype)numberWithUnsignedInt:(unsigned int)value; +@end + +__attribute__((swift_name("KotlinLong"))) +@interface KASCLong : KASCNumber +- (instancetype)initWithLongLong:(long long)value; ++ (instancetype)numberWithLongLong:(long long)value; +@end + +__attribute__((swift_name("KotlinULong"))) +@interface KASCULong : KASCNumber +- (instancetype)initWithUnsignedLongLong:(unsigned long long)value; ++ (instancetype)numberWithUnsignedLongLong:(unsigned long long)value; +@end + +__attribute__((swift_name("KotlinFloat"))) +@interface KASCFloat : KASCNumber +- (instancetype)initWithFloat:(float)value; ++ (instancetype)numberWithFloat:(float)value; +@end + +__attribute__((swift_name("KotlinDouble"))) +@interface KASCDouble : KASCNumber +- (instancetype)initWithDouble:(double)value; ++ (instancetype)numberWithDouble:(double)value; +@end + +__attribute__((swift_name("KotlinBoolean"))) +@interface KASCBoolean : KASCNumber +- (instancetype)initWithBool:(BOOL)value; ++ (instancetype)numberWithBool:(BOOL)value; +@end + + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + * + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((swift_name("Model"))) +@interface KASCModel : KASCBase + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCModelCompanion *companion __attribute__((swift_name("companion"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AuthenticationModel"))) +@interface KASCAuthenticationModel : KASCModel +- (instancetype)initWithAuthScope:(NSString *)authScope tokenType:(NSString * _Nullable)tokenType expiresIn:(KASCInt * _Nullable)expiresIn accessToken:(NSString * _Nullable)accessToken refreshToken:(NSString * _Nullable)refreshToken __attribute__((swift_name("init(authScope:tokenType:expiresIn:accessToken:refreshToken:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCAuthenticationModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCAuthenticationModel *)doCopyAuthScope:(NSString *)authScope tokenType:(NSString * _Nullable)tokenType expiresIn:(KASCInt * _Nullable)expiresIn accessToken:(NSString * _Nullable)accessToken refreshToken:(NSString * _Nullable)refreshToken __attribute__((swift_name("doCopy(authScope:tokenType:expiresIn:accessToken:refreshToken:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable accessToken __attribute__((swift_name("accessToken"))); +@property (readonly) NSString *authScope __attribute__((swift_name("authScope"))); +@property (readonly) KASCInt * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); +@property (readonly) NSString * _Nullable refreshToken __attribute__((swift_name("refreshToken"))); +@property (readonly) NSString * _Nullable tokenType __attribute__((swift_name("tokenType"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AuthenticationModel.Companion"))) +@interface KASCAuthenticationModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCAuthenticationModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@property (readonly) NSString *ACCESS_TOKEN __attribute__((swift_name("ACCESS_TOKEN"))); +@property (readonly) NSString *AUTH_SCOPE __attribute__((swift_name("AUTH_SCOPE"))); +@property (readonly) NSString *REFRESH_TOKEN __attribute__((swift_name("REFRESH_TOKEN"))); +@end + +__attribute__((swift_name("KotlinComparable"))) +@protocol KASCKotlinComparable +@required +- (int32_t)compareToOther:(id _Nullable)other __attribute__((swift_name("compareTo(other:)"))); +@end + +__attribute__((swift_name("KotlinEnum"))) +@interface KASCKotlinEnum : KASCBase +- (instancetype)initWithName:(NSString *)name ordinal:(int32_t)ordinal __attribute__((swift_name("init(name:ordinal:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKotlinEnumCompanion *companion __attribute__((swift_name("companion"))); +- (int32_t)compareToOther:(E)other __attribute__((swift_name("compareTo(other:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *name __attribute__((swift_name("name"))); +@property (readonly) int32_t ordinal __attribute__((swift_name("ordinal"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AuthenticationScope"))) +@interface KASCAuthenticationScope : KASCKotlinEnum ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); +- (instancetype)initWithName:(NSString *)name ordinal:(int32_t)ordinal __attribute__((swift_name("init(name:ordinal:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly) KASCAuthenticationScope *customer __attribute__((swift_name("customer"))); +@property (class, readonly) KASCAuthenticationScope *business __attribute__((swift_name("business"))); ++ (KASCKotlinArray *)values __attribute__((swift_name("values()"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("KangarooSdk"))) +@interface KASCKangarooSdk : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (NSString * _Nullable)getPreferredLanguage __attribute__((swift_name("getPreferredLanguage()"))); + +/** + * Gets the access token. If null or empty, the session has expired. + */ +- (NSString * _Nullable)getSession __attribute__((swift_name("getSession()"))); + +/** + * Initializes the sdk. Accessing the sdk prior to running this command + * will throw an exception + */ +- (void)initializeApplicationKey:(NSString *)applicationKey clientId:(NSString *)clientId clientSecret:(NSString *)clientSecret environment:(NSString *)environment __attribute__((swift_name("initialize(applicationKey:clientId:clientSecret:environment:)"))); +- (void)killSession __attribute__((swift_name("killSession()"))); +- (void)setPreferredLanguageIso639LanguageCode:(NSString *)iso639LanguageCode __attribute__((swift_name("setPreferredLanguage(iso639LanguageCode:)"))); +@end + +__attribute__((swift_name("KotlinThrowable"))) +@interface KASCKotlinThrowable : KASCBase +- (instancetype)initWithMessage:(NSString * _Nullable)message __attribute__((swift_name("init(message:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithCause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(cause:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (instancetype)initWithMessage:(NSString * _Nullable)message cause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(message:cause:)"))) __attribute__((objc_designated_initializer)); +- (KASCKotlinArray *)getStackTrace __attribute__((swift_name("getStackTrace()"))); +- (void)printStackTrace __attribute__((swift_name("printStackTrace()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCKotlinThrowable * _Nullable cause __attribute__((swift_name("cause"))); +@property (readonly) NSString * _Nullable message __attribute__((swift_name("message"))); +- (NSError *)asError __attribute__((swift_name("asError()"))); +@end + +__attribute__((swift_name("KotlinException"))) +@interface KASCKotlinException : KASCKotlinThrowable +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (instancetype)initWithMessage:(NSString * _Nullable)message __attribute__((swift_name("init(message:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithMessage:(NSString * _Nullable)message cause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(message:cause:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithCause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(cause:)"))) __attribute__((objc_designated_initializer)); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("KangarooSdkNotInitializedException"))) +@interface KASCKangarooSdkNotInitializedException : KASCKotlinException +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (instancetype)initWithMessage:(NSString * _Nullable)message __attribute__((swift_name("init(message:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +- (instancetype)initWithMessage:(NSString * _Nullable)message cause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(message:cause:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +- (instancetype)initWithCause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(cause:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (readonly) NSString *message __attribute__((swift_name("message"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SdkContext"))) +@interface KASCSdkContext : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)sdkContext __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSdkContext *shared __attribute__((swift_name("shared"))); +@property (readonly) KASCStately_concurrencyAtomicReference *applicationKey __attribute__((swift_name("applicationKey"))); +@property (readonly) KASCStately_concurrencyAtomicReference *clientId __attribute__((swift_name("clientId"))); +@property (readonly) KASCStately_concurrencyAtomicReference *clientSecret __attribute__((swift_name("clientSecret"))); +@property (readonly) KASCStately_concurrencyAtomicReference *environment __attribute__((swift_name("environment"))); +@property (readonly) KASCStately_concurrencyAtomicBoolean *sdkInit __attribute__((swift_name("sdkInit"))); +@property (readonly) KASCStately_concurrencyAtomicReference *tokenStore __attribute__((swift_name("tokenStore"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TokenStore"))) +@interface KASCTokenStore : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (NSString * _Nullable)getPreferredLanguage __attribute__((swift_name("getPreferredLanguage()"))); +- (KASCAuthenticationModel * _Nullable)getTokens __attribute__((swift_name("getTokens()"))); +- (void)storeTokensTokens:(KASCAuthenticationModel *)tokens __attribute__((swift_name("storeTokens(tokens:)"))); +@end + +__attribute__((swift_name("NetworkRequest"))) +@interface KASCNetworkRequest : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCNetworkRequestCompanion *companion __attribute__((swift_name("companion"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)deleteEndpoint:(id)endpoint fields:(KASCKotlinArray *)fields completionHandler:(void (^)(KASCModel * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("delete(endpoint:fields:completionHandler:)"))); + +/** + * GET request + * + * @param fields Optional list of fields to send in the request. + * + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)getEndpoint:(id)endpoint fields:(KASCKotlinArray *)fields completionHandler:(void (^)(KASCModel * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("get(endpoint:fields:completionHandler:)"))); + +/** + * PATCH body data + * + * @param requestBody Request body for this patch request + * + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)patchEndpoint:(id)endpoint headers:(NSArray *)headers queries:(NSArray *)queries fields:(NSArray *)fields requestBody:(id _Nullable)requestBody completionHandler:(void (^)(KASCModel * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("patch(endpoint:headers:queries:fields:requestBody:completionHandler:)"))); + +/** + * POST body data + * + * @param requestBody Request body for this post request + * + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)postEndpoint:(id)endpoint headers:(NSArray *)headers queries:(NSArray *)queries fields:(NSArray *)fields requestBody:(id _Nullable)requestBody completionHandler:(void (^)(KASCModel * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("post(endpoint:headers:queries:fields:requestBody:completionHandler:)"))); + +/** + * POST form data + * + * @param fields List of fields to send in the request. If you are required to post your data + * as a Json object, use post() instead of postForm() + * + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)postFormEndpoint:(id)endpoint fields:(KASCKotlinArray *)fields completionHandler:(void (^)(KASCModel * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("postForm(endpoint:fields:completionHandler:)"))); + +/** + * PATCH body data + * + * @param requestBody Request body for this patch request + * + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)putEndpoint:(id)endpoint headers:(NSArray *)headers queries:(NSArray *)queries fields:(NSArray *)fields requestBody:(id _Nullable)requestBody completionHandler:(void (^)(KASCModel * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("put(endpoint:headers:queries:fields:requestBody:completionHandler:)"))); + +/** + * Base network call that handles all errors. No exceptions should be thrown from this function; + * any errors and successes should be wrapped into a NetworkResult to be handled by the consumer. + * + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)safeNetworkCallCall:(id)call completionHandler:(void (^)(KASCIOResult * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("safeNetworkCall(call:completionHandler:)"))); + +/** + * POST form data + * + * @param fields List of fields to send in the request. If you are required to post your data + * as a Json object, use post() instead of postForm() + * + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)submitRefreshTokensFormEndpoint:(id)endpoint fields:(KASCKotlinArray *)fields completionHandler:(void (^)(KASCModel * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("submitRefreshTokensForm(endpoint:fields:completionHandler:)"))); +- (void)buildPatchOrPostRequest:(KASCKtor_client_coreHttpRequestBuilder *)receiver endpoint:(id)endpoint headers:(NSArray *)headers queries:(NSArray *)queries fields:(NSArray *)fields requestBody:(id _Nullable)requestBody __attribute__((swift_name("buildPatchOrPostRequest(_:endpoint:headers:queries:fields:requestBody:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NetworkRequest.Companion"))) +@interface KASCNetworkRequestCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCNetworkRequestCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Field class for requests that send Fields. + * Basic Key-Value pair structure + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Field"))) +@interface KASCField : KASCBase +- (instancetype)initWithName:(NSString *)name value:(NSString *)value __attribute__((swift_name("init(name:value:)"))) __attribute__((objc_designated_initializer)); + +/** + * Field class for requests that send Fields. + * Basic Key-Value pair structure + */ +- (KASCField *)doCopyName:(NSString *)name value:(NSString *)value __attribute__((swift_name("doCopy(name:value:)"))); + +/** + * Field class for requests that send Fields. + * Basic Key-Value pair structure + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Field class for requests that send Fields. + * Basic Key-Value pair structure + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Field class for requests that send Fields. + * Basic Key-Value pair structure + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *name __attribute__((swift_name("name"))); +@property (readonly) NSString *value __attribute__((swift_name("value"))); +@end + + +/** + * FormField class used to build form requests + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FormField"))) +@interface KASCFormField : KASCBase +- (instancetype)initWithName:(NSString *)name value:(id _Nullable)value __attribute__((swift_name("init(name:value:)"))) __attribute__((objc_designated_initializer)); + +/** + * FormField class used to build form requests + */ +- (KASCFormField *)doCopyName:(NSString *)name value:(id _Nullable)value __attribute__((swift_name("doCopy(name:value:)"))); + +/** + * FormField class used to build form requests + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * FormField class used to build form requests + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * FormField class used to build form requests + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *name __attribute__((swift_name("name"))); +@property (readonly) id _Nullable value __attribute__((swift_name("value"))); +@end + + +/** + * Header class used to build requests + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Header"))) +@interface KASCHeader : KASCBase +- (instancetype)initWithName:(NSString *)name value:(id _Nullable)value __attribute__((swift_name("init(name:value:)"))) __attribute__((objc_designated_initializer)); + +/** + * Header class used to build requests + */ +- (KASCHeader *)doCopyName:(NSString *)name value:(id _Nullable)value __attribute__((swift_name("doCopy(name:value:)"))); + +/** + * Header class used to build requests + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Header class used to build requests + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Header class used to build requests + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *name __attribute__((swift_name("name"))); +@property (readonly) id _Nullable value __attribute__((swift_name("value"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("KHttpClient"))) +@interface KASCKHttpClient : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)kHttpClient __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKHttpClient *shared __attribute__((swift_name("shared"))); + +/** + * Http client used for all http requests + */ +@property (readonly) KASCKtor_client_coreHttpClient *client __attribute__((swift_name("client"))); +@end + + +/** + * Thrown when the device has no internet connection. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NoConnectivityException"))) +@interface KASCNoConnectivityException : KASCKotlinException + +/** + * Thrown when the device has no internet connection. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Thrown when the device has no internet connection. + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (instancetype)initWithMessage:(NSString * _Nullable)message __attribute__((swift_name("init(message:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +- (instancetype)initWithMessage:(NSString * _Nullable)message cause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(message:cause:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +- (instancetype)initWithCause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(cause:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (readonly) NSString *message __attribute__((swift_name("message"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PathParameter"))) +@interface KASCPathParameter : KASCBase +- (instancetype)initWithSubPath:(NSString *)subPath value:(id _Nullable)value __attribute__((swift_name("init(subPath:value:)"))) __attribute__((objc_designated_initializer)); +- (KASCPathParameter *)doCopySubPath:(NSString *)subPath value:(id _Nullable)value __attribute__((swift_name("doCopy(subPath:value:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *subPath __attribute__((swift_name("subPath"))); +@property (readonly) id _Nullable value __attribute__((swift_name("value"))); +@end + + +/** + * Query class used to build requests + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Query"))) +@interface KASCQuery : KASCBase +- (instancetype)initWithName:(NSString *)name value:(id _Nullable)value __attribute__((swift_name("init(name:value:)"))) __attribute__((objc_designated_initializer)); + +/** + * Query class used to build requests + */ +- (KASCQuery *)doCopyName:(NSString *)name value:(id _Nullable)value __attribute__((swift_name("doCopy(name:value:)"))); + +/** + * Query class used to build requests + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Query class used to build requests + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Query class used to build requests + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *name __attribute__((swift_name("name"))); +@property (readonly) id _Nullable value __attribute__((swift_name("value"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserReAuthenticationModel"))) +@interface KASCUserReAuthenticationModel : KASCModel +- (instancetype)initWithTokenType:(NSString * _Nullable)tokenType expiresIn:(KASCInt * _Nullable)expiresIn accessToken:(NSString * _Nullable)accessToken refreshToken:(NSString * _Nullable)refreshToken __attribute__((swift_name("init(tokenType:expiresIn:accessToken:refreshToken:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserReAuthenticationModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserReAuthenticationModel *)doCopyTokenType:(NSString * _Nullable)tokenType expiresIn:(KASCInt * _Nullable)expiresIn accessToken:(NSString * _Nullable)accessToken refreshToken:(NSString * _Nullable)refreshToken __attribute__((swift_name("doCopy(tokenType:expiresIn:accessToken:refreshToken:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable accessToken __attribute__((swift_name("accessToken"))); +@property (readonly) KASCInt * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); +@property (readonly) NSString * _Nullable refreshToken __attribute__((swift_name("refreshToken"))); +@property (readonly) NSString * _Nullable tokenType __attribute__((swift_name("tokenType"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserReAuthenticationModel.Companion"))) +@interface KASCUserReAuthenticationModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserReAuthenticationModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@property (readonly) NSString *ACCESS_TOKEN __attribute__((swift_name("ACCESS_TOKEN"))); +@property (readonly) NSString *REFRESH_TOKEN __attribute__((swift_name("REFRESH_TOKEN"))); +@end + + +/** + * Language feature for [HttpClient]. + * + * @property language: value of Accept-Language header to set. Must conform to + * ISO 639-1 kangaroorewards.appsdk.core.utils.language code format. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language"))) +@interface KASCLanguage : KASCBase +- (instancetype)initWithLanguage:(NSString *)language __attribute__((swift_name("init(language:)"))) __attribute__((objc_designated_initializer)); +@end + + +/** + * Base class for all Api classes in the SDK. Api classes are the + * gateway to all functionality in the sdk, and will throw an error + * if they are accessed before the sdk has been initialized. + */ +__attribute__((swift_name("Api"))) +@interface KASCApi : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@end + +__attribute__((swift_name("ModelOld"))) +@interface KASCModelOld : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@end + +__attribute__((swift_name("ModelList"))) +@interface KASCModelList : KASCModelOld +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (readonly) NSArray *all __attribute__((swift_name("all"))); +@end + + +/** + * Base result class returned from all [Api] calls. + * Result will wrap various states such as Success, Error, Loading, etc... + */ +__attribute__((swift_name("Result"))) +@interface KASCResult<__covariant T> : KASCBase +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultEmptyResponse"))) +@interface KASCResultEmptyResponse<__covariant T> : KASCResult +- (instancetype)initWithBody:(NSString *)body __attribute__((swift_name("init(body:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCResultEmptyResponseCompanion *companion __attribute__((swift_name("companion"))); +- (KASCResultEmptyResponse *)doCopyBody:(NSString *)body __attribute__((swift_name("doCopy(body:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *body __attribute__((swift_name("body"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultEmptyResponseCompanion"))) +@interface KASCResultEmptyResponseCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCResultEmptyResponseCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializerTypeParamsSerializers:(KASCKotlinArray> *)typeParamsSerializers __attribute__((swift_name("serializer(typeParamsSerializers:)"))); +- (id)serializerTypeSerial0:(id)typeSerial0 __attribute__((swift_name("serializer(typeSerial0:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultIdle"))) +@interface KASCResultIdle<__covariant T> : KASCResult +- (instancetype)initWithState:(KASCResultMetaData *)state __attribute__((swift_name("init(state:)"))) __attribute__((objc_designated_initializer)); +- (KASCResultIdle *)doCopyState:(KASCResultMetaData *)state __attribute__((swift_name("doCopy(state:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCResultMetaData *state __attribute__((swift_name("state"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultLoading"))) +@interface KASCResultLoading<__covariant T> : KASCResult +- (instancetype)initWithState:(KASCResultMetaData *)state __attribute__((swift_name("init(state:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCResultLoadingCompanion *companion __attribute__((swift_name("companion"))); +- (KASCResultLoading *)doCopyState:(KASCResultMetaData *)state __attribute__((swift_name("doCopy(state:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCResultMetaData *state __attribute__((swift_name("state"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultLoadingCompanion"))) +@interface KASCResultLoadingCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCResultLoadingCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializerTypeParamsSerializers:(KASCKotlinArray> *)typeParamsSerializers __attribute__((swift_name("serializer(typeParamsSerializers:)"))); +- (id)serializerTypeSerial0:(id)typeSerial0 __attribute__((swift_name("serializer(typeSerial0:)"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultSuccess"))) +@interface KASCResultSuccess<__covariant T> : KASCResult +- (instancetype)initWithData:(T)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCResultSuccessCompanion *companion __attribute__((swift_name("companion"))); +- (KASCResultSuccess *)doCopyData:(T)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) T data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultSuccessCompanion"))) +@interface KASCResultSuccessCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCResultSuccessCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializerTypeParamsSerializers:(KASCKotlinArray> *)typeParamsSerializers __attribute__((swift_name("serializer(typeParamsSerializers:)"))); +- (id)serializerTypeSerial0:(id)typeSerial0 __attribute__((swift_name("serializer(typeSerial0:)"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultUnauthorizedError"))) +@interface KASCResultUnauthorizedError<__covariant T> : KASCResult +- (instancetype)initWithError:(KASCResultMetaData *)error __attribute__((swift_name("init(error:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCResultUnauthorizedErrorCompanion *companion __attribute__((swift_name("companion"))); +- (KASCResultUnauthorizedError *)doCopyError:(KASCResultMetaData *)error __attribute__((swift_name("doCopy(error:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCResultMetaData *error __attribute__((swift_name("error"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultUnauthorizedErrorCompanion"))) +@interface KASCResultUnauthorizedErrorCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCResultUnauthorizedErrorCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializerTypeParamsSerializers:(KASCKotlinArray> *)typeParamsSerializers __attribute__((swift_name("serializer(typeParamsSerializers:)"))); +- (id)serializerTypeSerial0:(id)typeSerial0 __attribute__((swift_name("serializer(typeSerial0:)"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultUnknownError"))) +@interface KASCResultUnknownError<__covariant T> : KASCResult +- (instancetype)initWithError:(KASCResultMetaData *)error __attribute__((swift_name("init(error:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCResultUnknownErrorCompanion *companion __attribute__((swift_name("companion"))); +- (KASCResultUnknownError *)doCopyError:(KASCResultMetaData *)error __attribute__((swift_name("doCopy(error:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCResultMetaData *error __attribute__((swift_name("error"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultUnknownErrorCompanion"))) +@interface KASCResultUnknownErrorCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCResultUnknownErrorCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializerTypeParamsSerializers:(KASCKotlinArray> *)typeParamsSerializers __attribute__((swift_name("serializer(typeParamsSerializers:)"))); +- (id)serializerTypeSerial0:(id)typeSerial0 __attribute__((swift_name("serializer(typeSerial0:)"))); +@end + + +/** + * Metadata class used to store serializable information + * about [Result] states. Any state that is not [Result.Success] + * should contain metadata. + * + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultMetaData"))) +@interface KASCResultMetaData : KASCBase +- (instancetype)initWithType:(NSString *)type code:(int32_t)code msg:(NSString *)msg __attribute__((swift_name("init(type:code:msg:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCResultMetaDataCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Metadata class used to store serializable information + * about [Result] states. Any state that is not [Result.Success] + * should contain metadata. + */ +- (KASCResultMetaData *)doCopyType:(NSString *)type code:(int32_t)code msg:(NSString *)msg __attribute__((swift_name("doCopy(type:code:msg:)"))); + +/** + * Metadata class used to store serializable information + * about [Result] states. Any state that is not [Result.Success] + * should contain metadata. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Metadata class used to store serializable information + * about [Result] states. Any state that is not [Result.Success] + * should contain metadata. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Metadata class used to store serializable information + * about [Result] states. Any state that is not [Result.Success] + * should contain metadata. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) int32_t code __attribute__((swift_name("code"))); +@property (readonly) NSString *msg __attribute__((swift_name("msg"))); + +/** Must match the class name of the Error being returned eg "UnauthorizedError" */ +@property (readonly) NSString *type __attribute__((swift_name("type"))); +@end + + +/** + * Metadata class used to store serializable information + * about [Result] states. Any state that is not [Result.Success] + * should contain metadata. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultMetaData.Companion"))) +@interface KASCResultMetaDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Metadata class used to store serializable information + * about [Result] states. Any state that is not [Result.Success] + * should contain metadata. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCResultMetaDataCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Metadata class used to store serializable information + * about [Result] states. Any state that is not [Result.Success] + * should contain metadata. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport +*/ +__attribute__((swift_name("SerializedResult"))) +@interface KASCSerializedResult<__covariant T> : KASCBase +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultEmptyResponse"))) +@interface KASCSerializedResultEmptyResponse : KASCSerializedResult +- (instancetype)initWithBody:(NSString *)body __attribute__((swift_name("init(body:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCSerializedResultEmptyResponseCompanion *companion __attribute__((swift_name("companion"))); +- (KASCSerializedResultEmptyResponse *)doCopyBody:(NSString *)body __attribute__((swift_name("doCopy(body:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *body __attribute__((swift_name("body"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultEmptyResponse.Companion"))) +@interface KASCSerializedResultEmptyResponseCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSerializedResultEmptyResponseCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultIdle"))) +@interface KASCSerializedResultIdle : KASCSerializedResult +- (instancetype)initWithState:(NSString *)state __attribute__((swift_name("init(state:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCSerializedResultIdleCompanion *companion __attribute__((swift_name("companion"))); +- (KASCSerializedResultIdle *)doCopyState:(NSString *)state __attribute__((swift_name("doCopy(state:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *state __attribute__((swift_name("state"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultIdle.Companion"))) +@interface KASCSerializedResultIdleCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSerializedResultIdleCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultLoading"))) +@interface KASCSerializedResultLoading : KASCSerializedResult +- (instancetype)initWithState:(NSString *)state __attribute__((swift_name("init(state:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCSerializedResultLoadingCompanion *companion __attribute__((swift_name("companion"))); +- (KASCSerializedResultLoading *)doCopyState:(NSString *)state __attribute__((swift_name("doCopy(state:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *state __attribute__((swift_name("state"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultLoading.Companion"))) +@interface KASCSerializedResultLoadingCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSerializedResultLoadingCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultSuccess"))) +@interface KASCSerializedResultSuccess : KASCSerializedResult +- (instancetype)initWithData:(NSString *)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCSerializedResultSuccessCompanion *companion __attribute__((swift_name("companion"))); +- (KASCSerializedResultSuccess *)doCopyData:(NSString *)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultSuccess.Companion"))) +@interface KASCSerializedResultSuccessCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSerializedResultSuccessCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultUnauthorizedError"))) +@interface KASCSerializedResultUnauthorizedError : KASCSerializedResult +- (instancetype)initWithError:(NSString *)error __attribute__((swift_name("init(error:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCSerializedResultUnauthorizedErrorCompanion *companion __attribute__((swift_name("companion"))); +- (KASCSerializedResultUnauthorizedError *)doCopyError:(NSString *)error __attribute__((swift_name("doCopy(error:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *error __attribute__((swift_name("error"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultUnauthorizedError.Companion"))) +@interface KASCSerializedResultUnauthorizedErrorCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSerializedResultUnauthorizedErrorCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultUnknownError"))) +@interface KASCSerializedResultUnknownError : KASCSerializedResult +- (instancetype)initWithError:(NSString *)error __attribute__((swift_name("init(error:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCSerializedResultUnknownErrorCompanion *companion __attribute__((swift_name("companion"))); +- (KASCSerializedResultUnknownError *)doCopyError:(NSString *)error __attribute__((swift_name("doCopy(error:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *error __attribute__((swift_name("error"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultUnknownError.Companion"))) +@interface KASCSerializedResultUnknownErrorCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSerializedResultUnknownErrorCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Abstract class for a Use Case. + * This abstraction represents an execution unit for different use cases (this means that any use + * case in the application should implement this contract). + * + * By convention, each [UseCase] implementation will execute its job on a background thread + * (kotlin coroutine) and will post the result in the UI thread. + */ +__attribute__((swift_name("UseCase"))) +@interface KASCUseCase<__covariant T, __contravariant Params> : KASCBase + +/** + * Abstract class for a Use Case. + * This abstraction represents an execution unit for different use cases (this means that any use + * case in the application should implement this contract). + * + * By convention, each [UseCase] implementation will execute its job on a background thread + * (kotlin coroutine) and will post the result in the UI thread. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Abstract class for a Use Case. + * This abstraction represents an execution unit for different use cases (this means that any use + * case in the application should implement this contract). + * + * By convention, each [UseCase] implementation will execute its job on a background thread + * (kotlin coroutine) and will post the result in the UI thread. + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (void)invokeParams:(Params _Nullable)params onResult:(void (^)(KASCResult *))onResult __attribute__((swift_name("invoke(params:onResult:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)runParams:(Params _Nullable)params completionHandler:(void (^)(KASCResult * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("run(params:completionHandler:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UseCaseNone"))) +@interface KASCUseCaseNone : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreFlow"))) +@protocol KASCKotlinx_coroutines_coreFlow +@required + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)collectCollector:(id)collector completionHandler:(void (^)(NSError * _Nullable))completionHandler __attribute__((swift_name("collect(collector:completionHandler:)"))); +@end + + +/** + * Common Flow wrapper which can be observed from JVM and Native code + * + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CFlow"))) +@interface KASCCFlow : KASCBase +- (instancetype)initWithOrigin:(id)origin __attribute__((swift_name("init(origin:)"))) __attribute__((objc_designated_initializer)); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)collectCollector:(id)collector completionHandler:(void (^)(NSError * _Nullable))completionHandler __attribute__((swift_name("collect(collector:completionHandler:)"))); + +/** + * Observes the flow for value updates. + */ +- (id)observeBlock:(void (^)(T _Nullable))block __attribute__((swift_name("observe(block:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Configuration"))) +@interface KASCConfiguration : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)configuration __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCConfiguration *shared __attribute__((swift_name("shared"))); +- (NSString *)getBaseUrl __attribute__((swift_name("getBaseUrl()"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("MultiRequestApi"))) +@interface KASCMultiRequestApi : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (NSMutableArray *> *)sendMultiRequestFunctions:(KASCKotlinArray> *)functions __attribute__((swift_name("sendMultiRequest(functions:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_"))) +@interface KASCLanguage_ : KASCBase +- (instancetype)initWithId:(int32_t)id code:(NSString *)code name:(NSString *)name __attribute__((swift_name("init(id:code:name:)"))) __attribute__((objc_designated_initializer)); +- (KASCLanguage_ *)doCopyId:(int32_t)id code:(NSString *)code name:(NSString *)name __attribute__((swift_name("doCopy(id:code:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *code __attribute__((swift_name("code"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); +@property (readonly) NSString *name __attribute__((swift_name("name"))); +@end + +__attribute__((swift_name("Translation"))) +@interface KASCTranslation : KASCModelOld +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (readonly) KASCLanguage_ *language __attribute__((swift_name("language"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardTranslation"))) +@interface KASCRewardTranslation : KASCTranslation +- (instancetype)initWithTitle:(NSString *)title description:(NSString *)description termsAndConditions:(NSString *)termsAndConditions link:(NSString *)link language:(KASCLanguage_ *)language __attribute__((swift_name("init(title:description:termsAndConditions:link:language:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +- (KASCRewardTranslation *)doCopyTitle:(NSString *)title description:(NSString *)description termsAndConditions:(NSString *)termsAndConditions link:(NSString *)link language:(KASCLanguage_ *)language __attribute__((swift_name("doCopy(title:description:termsAndConditions:link:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCLanguage_ *language __attribute__((swift_name("language"))); +@property (readonly) NSString *link __attribute__((swift_name("link"))); +@property (readonly) NSString *termsAndConditions __attribute__((swift_name("termsAndConditions"))); +@property (readonly) NSString *title __attribute__((swift_name("title"))); +@end + + +/** + * Represents an empty response. This could be either a successful response + * or an error - it simply means the http response has no body. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("EmptyResponse"))) +@interface KASCEmptyResponse : KASCModel ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents an empty response. This could be either a successful response + * or an error - it simply means the http response has no body. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); ++ (instancetype)emptyResponse __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCEmptyResponse *shared __attribute__((swift_name("shared"))); + +/** + * Represents an empty response. This could be either a successful response + * or an error - it simply means the http response has no body. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); + +/** + * Represents an empty response. This could be either a successful response + * or an error - it simply means the http response has no body. + */ +- (id)serializerTypeParamsSerializers:(KASCKotlinArray> *)typeParamsSerializers __attribute__((swift_name("serializer(typeParamsSerializers:)"))); +@end + +__attribute__((swift_name("IOResult"))) +@interface KASCIOResult<__covariant T> : KASCBase +@end + +__attribute__((swift_name("IOResultError"))) +@interface KASCIOResultError : KASCIOResult +- (instancetype)initWithError:(KASCResultMetaData *)error __attribute__((swift_name("init(error:)"))) __attribute__((objc_designated_initializer)); +@property (readonly) KASCResultMetaData *error __attribute__((swift_name("error"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("IOResultConnectionError"))) +@interface KASCIOResultConnectionError : KASCIOResultError +- (instancetype)initWithError:(KASCResultMetaData *)error __attribute__((swift_name("init(error:)"))) __attribute__((objc_designated_initializer)); +- (KASCIOResultConnectionError *)doCopyError:(KASCResultMetaData *)error __attribute__((swift_name("doCopy(error:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCResultMetaData *error __attribute__((swift_name("error"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("IOResultEmptyResponse"))) +@interface KASCIOResultEmptyResponse : KASCIOResult +- (instancetype)initWithBody:(NSString *)body __attribute__((swift_name("init(body:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCIOResultEmptyResponseCompanion *companion __attribute__((swift_name("companion"))); +- (KASCIOResultEmptyResponse *)doCopyBody:(NSString *)body __attribute__((swift_name("doCopy(body:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *body __attribute__((swift_name("body"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("IOResultEmptyResponse.Companion"))) +@interface KASCIOResultEmptyResponseCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCIOResultEmptyResponseCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("IOResultIdle"))) +@interface KASCIOResultIdle : KASCIOResult +- (instancetype)initWithState:(KASCResultMetaData *)state __attribute__((swift_name("init(state:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCIOResultIdleCompanion *companion __attribute__((swift_name("companion"))); +- (KASCIOResultIdle *)doCopyState:(KASCResultMetaData *)state __attribute__((swift_name("doCopy(state:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCResultMetaData *state __attribute__((swift_name("state"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("IOResultIdle.Companion"))) +@interface KASCIOResultIdleCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCIOResultIdleCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("IOResultLoading"))) +@interface KASCIOResultLoading : KASCIOResult +- (instancetype)initWithState:(KASCResultMetaData *)state __attribute__((swift_name("init(state:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCIOResultLoadingCompanion *companion __attribute__((swift_name("companion"))); +@property (readonly) KASCResultMetaData *state __attribute__((swift_name("state"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("IOResultLoading.Companion"))) +@interface KASCIOResultLoadingCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCIOResultLoadingCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("IOResultSuccess"))) +@interface KASCIOResultSuccess<__covariant T> : KASCIOResult +- (instancetype)initWithData:(T)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); +- (KASCIOResultSuccess *)doCopyData:(T)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) T data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("IOResultTimeoutError"))) +@interface KASCIOResultTimeoutError : KASCIOResultError +- (instancetype)initWithError:(KASCResultMetaData *)error __attribute__((swift_name("init(error:)"))) __attribute__((objc_designated_initializer)); +- (KASCIOResultTimeoutError *)doCopyError:(KASCResultMetaData *)error __attribute__((swift_name("doCopy(error:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCResultMetaData *error __attribute__((swift_name("error"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("IOResultUnauthorizedError"))) +@interface KASCIOResultUnauthorizedError : KASCIOResultError +- (instancetype)initWithError:(KASCResultMetaData *)error __attribute__((swift_name("init(error:)"))) __attribute__((objc_designated_initializer)); +- (KASCIOResultUnauthorizedError *)doCopyError:(KASCResultMetaData *)error __attribute__((swift_name("doCopy(error:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCResultMetaData *error __attribute__((swift_name("error"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("IOResultUnknownError"))) +@interface KASCIOResultUnknownError : KASCIOResultError +- (instancetype)initWithError:(KASCResultMetaData *)error __attribute__((swift_name("init(error:)"))) __attribute__((objc_designated_initializer)); +- (KASCIOResultUnknownError *)doCopyError:(KASCResultMetaData *)error __attribute__((swift_name("doCopy(error:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCResultMetaData *error __attribute__((swift_name("error"))); +@end + + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Model.Companion"))) +@interface KASCModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (id)serializerTypeParamsSerializers:(KASCKotlinArray> *)typeParamsSerializers __attribute__((swift_name("serializer(typeParamsSerializers:)"))); +@end + + +/** + * Get a users notification settings for a conglomerate business. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GetConglomerateNotificationPreferencesApi"))) +@interface KASCGetConglomerateNotificationPreferencesApi : KASCApi + +/** + * Get a users notification settings for a conglomerate business. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a users notification settings for a conglomerate business. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCGetConglomerateNotificationPreferencesApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a users notification settings for a conglomerate business. + */ +- (KASCCFlow *> *)getConglomerateNotificationPreferences __attribute__((swift_name("getConglomerateNotificationPreferences()"))); +@property (readonly) KASCCFlow *> *getConglomerateNotificationPreferencesState __attribute__((swift_name("getConglomerateNotificationPreferencesState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GetConglomerateNotificationPreferencesApi.Companion"))) +@interface KASCGetConglomerateNotificationPreferencesApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGetConglomerateNotificationPreferencesApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * The business who these settings this affect. This is not required when updating notification settings. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationBusinessPayload"))) +@interface KASCNotificationBusinessPayload : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name __attribute__((swift_name("init(id:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCNotificationBusinessPayloadCompanion *companion __attribute__((swift_name("companion"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (KASCNotificationBusinessPayload *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:name:)"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationBusinessPayload.Companion"))) +@interface KASCNotificationBusinessPayloadCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCNotificationBusinessPayloadCompanion *shared __attribute__((swift_name("shared"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsData"))) +@interface KASCNotificationSettingsData : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id business:(KASCNotificationBusinessPayload * _Nullable)business allowEmail:(KASCBoolean * _Nullable)allowEmail allowSms:(KASCBoolean * _Nullable)allowSms allowPush:(KASCBoolean * _Nullable)allowPush __attribute__((swift_name("init(id:business:allowEmail:allowSms:allowPush:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCNotificationSettingsDataCompanion *companion __attribute__((swift_name("companion"))); +- (KASCNotificationSettingsData *)doCopyId:(NSString * _Nullable)id business:(KASCNotificationBusinessPayload * _Nullable)business allowEmail:(KASCBoolean * _Nullable)allowEmail allowSms:(KASCBoolean * _Nullable)allowSms allowPush:(KASCBoolean * _Nullable)allowPush __attribute__((swift_name("doCopy(id:business:allowEmail:allowSms:allowPush:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCBoolean * _Nullable allowEmail __attribute__((swift_name("allowEmail"))); +@property (readonly) KASCBoolean * _Nullable allowPush __attribute__((swift_name("allowPush"))); +@property (readonly) KASCBoolean * _Nullable allowSms __attribute__((swift_name("allowSms"))); +@property (readonly) KASCNotificationBusinessPayload * _Nullable business __attribute__((swift_name("business"))); + +/** The notification settings id. This is not required when updating notification settings. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsData.Companion"))) +@interface KASCNotificationSettingsDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCNotificationSettingsDataCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsModel"))) +@interface KASCNotificationSettingsModel : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCNotificationSettingsModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCNotificationSettingsModel *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsModel.Companion"))) +@interface KASCNotificationSettingsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCNotificationSettingsModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Acquires information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TiersApi"))) +@interface KASCTiersApi : KASCApi + +/** + * Acquires information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Acquires information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCTiersApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Acquires information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. + */ +- (KASCCFlow *> *)getTiers __attribute__((swift_name("getTiers()"))); +@property (readonly) KASCCFlow *> *tiersState __attribute__((swift_name("tiersState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TiersApi.Companion"))) +@interface KASCTiersApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTiersApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language__"))) +@interface KASCLanguage__ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage__Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage__ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language__.Companion"))) +@interface KASCLanguage__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Tier"))) +@interface KASCTier : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id tiersSequence:(NSArray * _Nullable)tiersSequence isCombined:(KASCBoolean * _Nullable)isCombined resetType:(KASCInt * _Nullable)resetType resetPeriodMonth:(KASCInt * _Nullable)resetPeriodMonth basePreviousPeriod:(KASCInt * _Nullable)basePreviousPeriod enabled:(KASCBoolean * _Nullable)enabled defaultTierIcon:(NSString * _Nullable)defaultTierIcon tierLevels:(NSArray * _Nullable)tierLevels resetByCustomerRegistrationMonth:(KASCBoolean * _Nullable)resetByCustomerRegistrationMonth gracePeriod:(NSString * _Nullable)gracePeriod __attribute__((swift_name("init(id:tiersSequence:isCombined:resetType:resetPeriodMonth:basePreviousPeriod:enabled:defaultTierIcon:tierLevels:resetByCustomerRegistrationMonth:gracePeriod:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierCompanion *companion __attribute__((swift_name("companion"))); +- (KASCTier *)doCopyId:(KASCLong * _Nullable)id tiersSequence:(NSArray * _Nullable)tiersSequence isCombined:(KASCBoolean * _Nullable)isCombined resetType:(KASCInt * _Nullable)resetType resetPeriodMonth:(KASCInt * _Nullable)resetPeriodMonth basePreviousPeriod:(KASCInt * _Nullable)basePreviousPeriod enabled:(KASCBoolean * _Nullable)enabled defaultTierIcon:(NSString * _Nullable)defaultTierIcon tierLevels:(NSArray * _Nullable)tierLevels resetByCustomerRegistrationMonth:(KASCBoolean * _Nullable)resetByCustomerRegistrationMonth gracePeriod:(NSString * _Nullable)gracePeriod __attribute__((swift_name("doCopy(id:tiersSequence:isCombined:resetType:resetPeriodMonth:basePreviousPeriod:enabled:defaultTierIcon:tierLevels:resetByCustomerRegistrationMonth:gracePeriod:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCInt * _Nullable basePreviousPeriod __attribute__((swift_name("basePreviousPeriod"))); + +/** Default icon to show in case the user has no current tier level. */ +@property (readonly) NSString * _Nullable defaultTierIcon __attribute__((swift_name("defaultTierIcon"))); + +/** Whether this tier program is currently enabled or disabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** How many months after the reset month. */ +@property (readonly) NSString * _Nullable gracePeriod __attribute__((swift_name("gracePeriod"))); + +/** The ID for this tier program. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** If the tier program is an 'and' or 'or' */ +@property (readonly) KASCBoolean * _Nullable isCombined __attribute__((swift_name("isCombined"))); + +/** To control whether to use customer registration month for reset.. */ +@property (readonly) KASCBoolean * _Nullable resetByCustomerRegistrationMonth __attribute__((swift_name("resetByCustomerRegistrationMonth"))); + +/** The month in which this tier program will reset. */ +@property (readonly) KASCInt * _Nullable resetPeriodMonth __attribute__((swift_name("resetPeriodMonth"))); +@property (readonly) KASCInt * _Nullable resetType __attribute__((swift_name("resetType"))); + +/** The various tier levels within this tier program. */ +@property (readonly) NSArray * _Nullable tierLevels __attribute__((swift_name("tierLevels"))); + +/** The sequence for this tier program. */ +@property (readonly) NSArray * _Nullable tiersSequence __attribute__((swift_name("tiersSequence"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Tier.Companion"))) +@interface KASCTierCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel"))) +@interface KASCTierLevel : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier level. + */ +- (KASCTierLevel *)doCopyId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))); + +/** + * Represents a single tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The icon of this tier level. */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** The ID for this tier. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** translation for each tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); + +/** The name of this tier level. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount of points acquired that is required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachPoints __attribute__((swift_name("reachPoints"))); + +/** The amount of money spent required to reach this tier. */ +@property (readonly) KASCFloat * _Nullable reachSpend __attribute__((swift_name("reachSpend"))); + +/** The amount of visits made to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachVisits __attribute__((swift_name("reachVisits"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable tierPerks __attribute__((swift_name("tierPerks"))); +@end + + +/** + * Represents a single tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel.Companion"))) +@interface KASCTierLevelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation"))) +@interface KASCTierLevelTranslation : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage__ * _Nullable)language __attribute__((swift_name("init(languageId:name:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevelTranslationCompanion *companion __attribute__((swift_name("companion"))); +- (KASCTierLevelTranslation *)doCopyLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage__ * _Nullable)language __attribute__((swift_name("doCopy(languageId:name:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The description of this tier level as translated. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage__ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation.Companion"))) +@interface KASCTierLevelTranslationCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevelTranslationCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier perk for a tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk"))) +@interface KASCTierPerk : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerkCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (KASCTierPerk *)doCopyId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Whether this tier perk is currently enabled or disabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The ID for this tier perk. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Whether the offer this tier perk is currently attached to is expired or not. */ +@property (readonly) KASCBoolean * _Nullable isExpired __attribute__((swift_name("isExpired"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); +@property (readonly) KASCLong * _Nullable offerId __attribute__((swift_name("offerId"))); +@property (readonly) KASCLong * _Nullable punchItemId __attribute__((swift_name("punchItemId"))); + +/** The ID for the tier level this tier perk is related to. */ +@property (readonly) KASCLong * _Nullable tierId __attribute__((swift_name("tierId"))); + +/** The title of this tier perk. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + + +/** + * Represents a single tier perk for a tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk.Companion"))) +@interface KASCTierPerkCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier perk for a tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerkCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation"))) +@interface KASCTierPerkTranslation : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage__ * _Nullable)language __attribute__((swift_name("init(languageId:title:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerkTranslationCompanion *companion __attribute__((swift_name("companion"))); +- (KASCTierPerkTranslation *)doCopyLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage__ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage__ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation.Companion"))) +@interface KASCTierPerkTranslationCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerkTranslationCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgramInclude"))) +@interface KASCTierProgramInclude : KASCBase +- (instancetype)initWithTierLevel:(KASCUserTierLevel * _Nullable)tierLevel tiers:(NSArray * _Nullable)tiers tierProgress:(KASCTierProgress * _Nullable)tierProgress __attribute__((swift_name("init(tierLevel:tiers:tierProgress:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierProgramIncludeCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. + */ +- (KASCTierProgramInclude *)doCopyTierLevel:(KASCUserTierLevel * _Nullable)tierLevel tiers:(NSArray * _Nullable)tiers tierProgress:(KASCTierProgress * _Nullable)tierProgress __attribute__((swift_name("doCopy(tierLevel:tiers:tierProgress:)"))); + +/** + * Information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** User's tier status. */ +@property (readonly) KASCUserTierLevel * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** User's tier progress and status. If a user's tier status is statically fixed, this will be null as they do not progress from tier to tier. */ +@property (readonly) KASCTierProgress * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); + +/** Information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. */ +@property (readonly) NSArray * _Nullable tiers __attribute__((swift_name("tiers"))); +@end + + +/** + * Information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgramInclude.Companion"))) +@interface KASCTierProgramIncludeCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierProgramIncludeCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress"))) +@interface KASCTierProgress : KASCBase +- (instancetype)initWithStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("init(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierProgressCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (KASCTierProgress *)doCopyStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("doCopy(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The end date for this tier session. The tier will be reset once this date is reached. */ +@property (readonly) NSString * _Nullable endDate __attribute__((swift_name("endDate"))); + +/** The amount of spend left in the user's current tier progress. Once they have acquired this many more amount of spend, they will be moved into the next tier. */ +@property (readonly) KASCFloat * _Nullable leftAmount __attribute__((swift_name("leftAmount"))); + +/** The amount of points left in the user's current tier progress. Once they have acquired this many more amount of points, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftPoints __attribute__((swift_name("leftPoints"))); + +/** The amount of visits left in the user's current tier progress. Once they have acquired this many more amount of visits, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftVisits __attribute__((swift_name("leftVisits"))); + +/** The name of the user's next tier level. */ +@property (readonly) NSString * _Nullable nextTierLevel __attribute__((swift_name("nextTierLevel"))); + +/** The start date for this tier session. */ +@property (readonly) NSString * _Nullable startDate __attribute__((swift_name("startDate"))); + +/** The name of the user's current tier level */ +@property (readonly) NSString * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** The name of the user's current tier level. Tiers are recalculated once per day, as such \"tier_level\" may not be completely up to date. */ +@property (readonly) NSString * _Nullable tierLevelLive __attribute__((swift_name("tierLevelLive"))); + +/** The users current tier progress in their \"tier_level\". This will be a number between 0 and 1. A tier progress of 0.5 means that the user has made 50% progress in their current tier. */ +@property (readonly) KASCFloat * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); + +/** Purchase amount between start_date and end_date. */ +@property (readonly) KASCFloat * _Nullable totalAmount __attribute__((swift_name("totalAmount"))); + +/** Purchase points between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalPoints __attribute__((swift_name("totalPoints"))); + +/** Purchase visits between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalVisits __attribute__((swift_name("totalVisits"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress.Companion"))) +@interface KASCTierProgressCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierProgressCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel"))) +@interface KASCUserProfileDataModel : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel.Companion"))) +@interface KASCUserProfileDataModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data and tier program data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileWithTierProgram"))) +@interface KASCUserProfileWithTierProgram : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel * _Nullable)data included:(KASCTierProgramInclude * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileWithTierProgramCompanion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data and tier program data + */ +- (KASCUserProfileWithTierProgram *)doCopyData:(KASCUserProfileDataModel * _Nullable)data included:(KASCTierProgramInclude * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Profile model class containing user data and tier program data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data and tier program data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data and tier program data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user profile data */ +@property (readonly) KASCUserProfileDataModel * _Nullable data __attribute__((swift_name("data"))); + +/** Contains user balance data */ +@property (readonly) KASCTierProgramInclude * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Profile model class containing user data and tier program data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileWithTierProgram.Companion"))) +@interface KASCUserProfileWithTierProgramCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data and tier program data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileWithTierProgramCompanion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data and tier program data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents the user's current tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserTierLevel"))) +@interface KASCUserTierLevel : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCLong * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints __attribute__((swift_name("init(id:name:reachSpend:reachVisits:reachPoints:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserTierLevelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Represents the user's current tier level. + */ +- (KASCUserTierLevel *)doCopyId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCLong * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints __attribute__((swift_name("doCopy(id:name:reachSpend:reachVisits:reachPoints:)"))); + +/** + * Represents the user's current tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents the user's current tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents the user's current tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The ID for this tier. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** The name of this tier level. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount of points acquired that is required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachPoints __attribute__((swift_name("reachPoints"))); + +/** The amount of money spent required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachSpend __attribute__((swift_name("reachSpend"))); + +/** The amount of visits made to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachVisits __attribute__((swift_name("reachVisits"))); +@end + + +/** + * Represents the user's current tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserTierLevel.Companion"))) +@interface KASCUserTierLevelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents the user's current tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserTierLevelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Represents the user's current tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get user profile data for this user for specific business. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessProfileApi"))) +@interface KASCUserBusinessProfileApi : KASCApi + +/** + * Get user profile data for this user for specific business. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get user profile data for this user for specific business. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserBusinessProfileApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get user profile data for this user for specific business. + */ +- (KASCCFlow *> *)getUserBusinessProfileBusinessId:(NSString *)businessId __attribute__((swift_name("getUserBusinessProfile(businessId:)"))); +@property (readonly) KASCCFlow *> *userBusinessProfileState __attribute__((swift_name("userBusinessProfileState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessProfileApi.Companion"))) +@interface KASCUserBusinessProfileApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessProfileApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory"))) +@interface KASCBusinessCategory : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("init(name:icon:code:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessCategoryCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (KASCBusinessCategory *)doCopyName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("doCopy(name:icon:code:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique ategory code for this category */ +@property (readonly) NSString * _Nullable code __attribute__((swift_name("code"))); + +/** Url to this category's icon */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** Name of this category */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory.Companion"))) +@interface KASCBusinessCategoryCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessCategoryCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData"))) +@interface KASCBusinessData : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage * _Nullable)logo logoTransparentBackground:(KASCImage * _Nullable)logoTransparentBackground coverPhoto:(KASCImage * _Nullable)coverPhoto category:(KASCBusinessCategory * _Nullable)category __attribute__((swift_name("init(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessDataCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Business profile data + */ +- (KASCBusinessData *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage * _Nullable)logo logoTransparentBackground:(KASCImage * _Nullable)logoTransparentBackground coverPhoto:(KASCImage * _Nullable)coverPhoto category:(KASCBusinessCategory * _Nullable)category __attribute__((swift_name("doCopy(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))); + +/** + * Business profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** General about text for the business */ +@property (readonly) NSString * _Nullable about __attribute__((swift_name("about"))); +@property (readonly) KASCBusinessCategory * _Nullable category __attribute__((swift_name("category"))); + +/** Whether this is a conglomerate business. Conglomerate businesses are umbrellas for multiple business' in Kangaroo */ +@property (readonly) NSString * _Nullable conglomerate __attribute__((swift_name("conglomerate"))); +@property (readonly) KASCImage * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique business ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage * _Nullable logo __attribute__((swift_name("logo"))); +@property (readonly) KASCImage * _Nullable logoTransparentBackground __attribute__((swift_name("logoTransparentBackground"))); + +/** The manner in which this business rewards its customers. This can be by purchase amount of by visit to the store */ +@property (readonly) NSString * _Nullable loyaltyType __attribute__((swift_name("loyaltyType"))); + +/** The name of this business */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** Whether this is a white label business. White label business' don't appear in the Kangaroo Mobile Customer app, as they usually have their own app. */ +@property (readonly) NSString * _Nullable whiteLabel __attribute__((swift_name("whiteLabel"))); +@end + + +/** + * Business profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData.Companion"))) +@interface KASCBusinessDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessDataCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Business profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image"))) +@interface KASCImage : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImageCompanion *companion __attribute__((swift_name("companion"))); +- (KASCImage *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image.Companion"))) +@interface KASCImageCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImageCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language___"))) +@interface KASCLanguage___ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage___Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage___ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language___.Companion"))) +@interface KASCLanguage___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage___Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A referral program + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram"))) +@interface KASCReferralProgram : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("init(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCReferralProgramCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A referral program + */ +- (KASCReferralProgram *)doCopyId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("doCopy(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))); + +/** + * A referral program + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A referral program + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A referral program + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The minimum purchawe amount required for a succesful referral. */ +@property (readonly) KASCDouble * _Nullable condMinAmount __attribute__((swift_name("condMinAmount"))); + +/** Denotes whether this referral program is currently active. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The number of days the new customer has to sign up in order for a referral to be sucessful. */ +@property (readonly) KASCLong * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); + +/** The unique id of this referral program. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Denotes whether this referral program has enabled share links. Referral share links are links that the customer can send to prospective referrals. A User can sign up to the business through this link in order to complete the referral. */ +@property (readonly) KASCBoolean * _Nullable linkReferralEnabled __attribute__((swift_name("linkReferralEnabled"))); + +/** The number of points the new customer will earn. */ +@property (readonly) KASCLong * _Nullable refereeEarns __attribute__((swift_name("refereeEarns"))); + +/** The number of points the new customer who made the referral will earn. */ +@property (readonly) KASCLong * _Nullable refererEarns __attribute__((swift_name("refererEarns"))); + +/** A link that can be shared to prospective referrals. */ +@property (readonly) NSString * _Nullable referralLink __attribute__((swift_name("referralLink"))); +@property (readonly) NSString * _Nullable ruleName __attribute__((swift_name("ruleName"))); +@end + + +/** + * A referral program + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram.Companion"))) +@interface KASCReferralProgramCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A referral program + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCReferralProgramCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A referral program + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel_"))) +@interface KASCTierLevel_ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevel_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier level. + */ +- (KASCTierLevel_ *)doCopyId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))); + +/** + * Represents a single tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The icon of this tier level. */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** The ID for this tier. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** translation for each tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); + +/** The name of this tier level. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount of points acquired that is required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachPoints __attribute__((swift_name("reachPoints"))); + +/** The amount of money spent required to reach this tier. */ +@property (readonly) KASCFloat * _Nullable reachSpend __attribute__((swift_name("reachSpend"))); + +/** The amount of visits made to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachVisits __attribute__((swift_name("reachVisits"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable tierPerks __attribute__((swift_name("tierPerks"))); +@end + + +/** + * Represents a single tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel_.Companion"))) +@interface KASCTierLevel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevel_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation_"))) +@interface KASCTierLevelTranslation_ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage___ * _Nullable)language __attribute__((swift_name("init(languageId:name:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevelTranslation_Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierLevelTranslation_ *)doCopyLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage___ * _Nullable)language __attribute__((swift_name("doCopy(languageId:name:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The description of this tier level as translated. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage___ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation_.Companion"))) +@interface KASCTierLevelTranslation_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevelTranslation_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier perk for a tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk_"))) +@interface KASCTierPerk_ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerk_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (KASCTierPerk_ *)doCopyId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Whether this tier perk is currently enabled or disabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The ID for this tier perk. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Whether the offer this tier perk is currently attached to is expired or not. */ +@property (readonly) KASCBoolean * _Nullable isExpired __attribute__((swift_name("isExpired"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); +@property (readonly) KASCLong * _Nullable offerId __attribute__((swift_name("offerId"))); +@property (readonly) KASCLong * _Nullable punchItemId __attribute__((swift_name("punchItemId"))); + +/** The ID for the tier level this tier perk is related to. */ +@property (readonly) KASCLong * _Nullable tierId __attribute__((swift_name("tierId"))); + +/** The title of this tier perk. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + + +/** + * Represents a single tier perk for a tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk_.Companion"))) +@interface KASCTierPerk_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier perk for a tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerk_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation_"))) +@interface KASCTierPerkTranslation_ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage___ * _Nullable)language __attribute__((swift_name("init(languageId:title:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerkTranslation_Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierPerkTranslation_ *)doCopyLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage___ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage___ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation_.Companion"))) +@interface KASCTierPerkTranslation_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerkTranslation_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress_"))) +@interface KASCTierProgress_ : KASCBase +- (instancetype)initWithStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("init(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierProgress_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (KASCTierProgress_ *)doCopyStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("doCopy(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The end date for this tier session. The tier will be reset once this date is reached. */ +@property (readonly) NSString * _Nullable endDate __attribute__((swift_name("endDate"))); + +/** The amount of spend left in the user's current tier progress. Once they have acquired this many more amount of spend, they will be moved into the next tier. */ +@property (readonly) KASCFloat * _Nullable leftAmount __attribute__((swift_name("leftAmount"))); + +/** The amount of points left in the user's current tier progress. Once they have acquired this many more amount of points, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftPoints __attribute__((swift_name("leftPoints"))); + +/** The amount of visits left in the user's current tier progress. Once they have acquired this many more amount of visits, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftVisits __attribute__((swift_name("leftVisits"))); + +/** The name of the user's next tier level. */ +@property (readonly) NSString * _Nullable nextTierLevel __attribute__((swift_name("nextTierLevel"))); + +/** The start date for this tier session. */ +@property (readonly) NSString * _Nullable startDate __attribute__((swift_name("startDate"))); + +/** The name of the user's current tier level */ +@property (readonly) NSString * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** The name of the user's current tier level. Tiers are recalculated once per day, as such \"tier_level\" may not be completely up to date. */ +@property (readonly) NSString * _Nullable tierLevelLive __attribute__((swift_name("tierLevelLive"))); + +/** The users current tier progress in their \"tier_level\". This will be a number between 0 and 1. A tier progress of 0.5 means that the user has made 50% progress in their current tier. */ +@property (readonly) KASCFloat * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); + +/** Purchase amount between start_date and end_date. */ +@property (readonly) KASCFloat * _Nullable totalAmount __attribute__((swift_name("totalAmount"))); + +/** Purchase points between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalPoints __attribute__((swift_name("totalPoints"))); + +/** Purchase visits between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalVisits __attribute__((swift_name("totalVisits"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress_.Companion"))) +@interface KASCTierProgress_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierProgress_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile balance data. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance"))) +@interface KASCUserBalance : KASCBase +- (instancetype)initWithPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("init(points:giftcard:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBalanceCompanion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile balance data. + */ +- (KASCUserBalance *)doCopyPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("doCopy(points:giftcard:)"))); + +/** + * User Profile balance data. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile balance data. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile balance data. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount of store credit in the users' e-wallet. */ +@property (readonly) KASCDouble * _Nullable giftcard __attribute__((swift_name("giftcard"))); + +/** The number of points this user currently has. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + + +/** + * User Profile balance data. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance.Companion"))) +@interface KASCUserBalanceCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile balance data. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBalanceCompanion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile balance data. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data for specific business + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessProfileModel"))) +@interface KASCUserBusinessProfileModel : KASCModel +- (instancetype)initWithData:(KASCBusinessData * _Nullable)data included:(KASCUserProfileInclude * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserBusinessProfileModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data for specific business + */ +- (KASCUserBusinessProfileModel *)doCopyData:(KASCBusinessData * _Nullable)data included:(KASCUserProfileInclude * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Profile model class containing user data for specific business + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data for specific business + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data for specific business + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains business data */ +@property (readonly) KASCBusinessData * _Nullable data __attribute__((swift_name("data"))); + +/** Contains user balance data */ +@property (readonly) KASCUserProfileInclude * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Profile model class containing user data for specific business + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessProfileModel.Companion"))) +@interface KASCUserBusinessProfileModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data for specific business + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessProfileModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data for specific business + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Extra user profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude"))) +@interface KASCUserProfileInclude : KASCBase +- (instancetype)initWithBalance:(KASCUserBalance * _Nullable)balance tierLevel:(KASCTierLevel_ * _Nullable)tierLevel tierProgress:(KASCTierProgress_ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("init(balance:tierLevel:tierProgress:referralPrograms:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserProfileIncludeCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Extra user profile data + */ +- (KASCUserProfileInclude *)doCopyBalance:(KASCUserBalance * _Nullable)balance tierLevel:(KASCTierLevel_ * _Nullable)tierLevel tierProgress:(KASCTierProgress_ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("doCopy(balance:tierLevel:tierProgress:referralPrograms:)"))); + +/** + * Extra user profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Extra user profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Extra user profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** User Profile balance data. */ +@property (readonly) KASCUserBalance * _Nullable balance __attribute__((swift_name("balance"))); + +/** A list of referral programs the user has access to. */ +@property (readonly) NSArray * _Nullable referralPrograms __attribute__((swift_name("referralPrograms"))); + +/** User's tier status. */ +@property (readonly) KASCTierLevel_ * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** User's tier progress and status. If a user's tier status is statically fixed, this will be null as they do not progress from tier to tier. */ +@property (readonly) KASCTierProgress_ * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); +@end + + +/** + * Extra user profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude.Companion"))) +@interface KASCUserProfileIncludeCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Extra user profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileIncludeCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Extra user profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Notify Kangaroo that an offer has been shared to facebook [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferFacebookShareApi"))) +@interface KASCOfferFacebookShareApi : KASCApi + +/** + * Notify Kangaroo that an offer has been shared to facebook [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Notify Kangaroo that an offer has been shared to facebook [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCOfferFacebookShareApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Notify Kangaroo that an offer has been shared to facebook + */ +- (KASCCFlow *> *)postOfferFacebookShareOfferId:(NSString *)offerId include:(NSString *)include facebookUserId:(NSString *)facebookUserId type:(NSString *)type friendsCount:(NSString *)friendsCount __attribute__((swift_name("postOfferFacebookShare(offerId:include:facebookUserId:type:friendsCount:)"))); +@property (readonly) KASCCFlow *> *offerFacebookShareState __attribute__((swift_name("offerFacebookShareState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferFacebookShareApi.Companion"))) +@interface KASCOfferFacebookShareApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferFacebookShareApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language____"))) +@interface KASCLanguage____ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage____Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage____ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language____.Companion"))) +@interface KASCLanguage____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A referral program + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram_"))) +@interface KASCReferralProgram_ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("init(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCReferralProgram_Companion *companion __attribute__((swift_name("companion"))); + +/** + * A referral program + */ +- (KASCReferralProgram_ *)doCopyId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("doCopy(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))); + +/** + * A referral program + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A referral program + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A referral program + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The minimum purchawe amount required for a succesful referral. */ +@property (readonly) KASCDouble * _Nullable condMinAmount __attribute__((swift_name("condMinAmount"))); + +/** Denotes whether this referral program is currently active. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The number of days the new customer has to sign up in order for a referral to be sucessful. */ +@property (readonly) KASCLong * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); + +/** The unique id of this referral program. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Denotes whether this referral program has enabled share links. Referral share links are links that the customer can send to prospective referrals. A User can sign up to the business through this link in order to complete the referral. */ +@property (readonly) KASCBoolean * _Nullable linkReferralEnabled __attribute__((swift_name("linkReferralEnabled"))); + +/** The number of points the new customer will earn. */ +@property (readonly) KASCLong * _Nullable refereeEarns __attribute__((swift_name("refereeEarns"))); + +/** The number of points the new customer who made the referral will earn. */ +@property (readonly) KASCLong * _Nullable refererEarns __attribute__((swift_name("refererEarns"))); + +/** A link that can be shared to prospective referrals. */ +@property (readonly) NSString * _Nullable referralLink __attribute__((swift_name("referralLink"))); +@property (readonly) NSString * _Nullable ruleName __attribute__((swift_name("ruleName"))); +@end + + +/** + * A referral program + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram_.Companion"))) +@interface KASCReferralProgram_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A referral program + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCReferralProgram_Companion *shared __attribute__((swift_name("shared"))); + +/** + * A referral program + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel__"))) +@interface KASCTierLevel__ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevel__Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier level. + */ +- (KASCTierLevel__ *)doCopyId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))); + +/** + * Represents a single tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The icon of this tier level. */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** The ID for this tier. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** translation for each tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); + +/** The name of this tier level. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount of points acquired that is required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachPoints __attribute__((swift_name("reachPoints"))); + +/** The amount of money spent required to reach this tier. */ +@property (readonly) KASCFloat * _Nullable reachSpend __attribute__((swift_name("reachSpend"))); + +/** The amount of visits made to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachVisits __attribute__((swift_name("reachVisits"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable tierPerks __attribute__((swift_name("tierPerks"))); +@end + + +/** + * Represents a single tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel__.Companion"))) +@interface KASCTierLevel__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevel__Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation__"))) +@interface KASCTierLevelTranslation__ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage____ * _Nullable)language __attribute__((swift_name("init(languageId:name:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevelTranslation__Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierLevelTranslation__ *)doCopyLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage____ * _Nullable)language __attribute__((swift_name("doCopy(languageId:name:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The description of this tier level as translated. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage____ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation__.Companion"))) +@interface KASCTierLevelTranslation__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevelTranslation__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier perk for a tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk__"))) +@interface KASCTierPerk__ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerk__Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (KASCTierPerk__ *)doCopyId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Whether this tier perk is currently enabled or disabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The ID for this tier perk. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Whether the offer this tier perk is currently attached to is expired or not. */ +@property (readonly) KASCBoolean * _Nullable isExpired __attribute__((swift_name("isExpired"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); +@property (readonly) KASCLong * _Nullable offerId __attribute__((swift_name("offerId"))); +@property (readonly) KASCLong * _Nullable punchItemId __attribute__((swift_name("punchItemId"))); + +/** The ID for the tier level this tier perk is related to. */ +@property (readonly) KASCLong * _Nullable tierId __attribute__((swift_name("tierId"))); + +/** The title of this tier perk. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + + +/** + * Represents a single tier perk for a tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk__.Companion"))) +@interface KASCTierPerk__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier perk for a tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerk__Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation__"))) +@interface KASCTierPerkTranslation__ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage____ * _Nullable)language __attribute__((swift_name("init(languageId:title:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerkTranslation__Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierPerkTranslation__ *)doCopyLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage____ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage____ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation__.Companion"))) +@interface KASCTierPerkTranslation__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerkTranslation__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress__"))) +@interface KASCTierProgress__ : KASCBase +- (instancetype)initWithStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("init(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierProgress__Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (KASCTierProgress__ *)doCopyStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("doCopy(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The end date for this tier session. The tier will be reset once this date is reached. */ +@property (readonly) NSString * _Nullable endDate __attribute__((swift_name("endDate"))); + +/** The amount of spend left in the user's current tier progress. Once they have acquired this many more amount of spend, they will be moved into the next tier. */ +@property (readonly) KASCFloat * _Nullable leftAmount __attribute__((swift_name("leftAmount"))); + +/** The amount of points left in the user's current tier progress. Once they have acquired this many more amount of points, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftPoints __attribute__((swift_name("leftPoints"))); + +/** The amount of visits left in the user's current tier progress. Once they have acquired this many more amount of visits, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftVisits __attribute__((swift_name("leftVisits"))); + +/** The name of the user's next tier level. */ +@property (readonly) NSString * _Nullable nextTierLevel __attribute__((swift_name("nextTierLevel"))); + +/** The start date for this tier session. */ +@property (readonly) NSString * _Nullable startDate __attribute__((swift_name("startDate"))); + +/** The name of the user's current tier level */ +@property (readonly) NSString * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** The name of the user's current tier level. Tiers are recalculated once per day, as such \"tier_level\" may not be completely up to date. */ +@property (readonly) NSString * _Nullable tierLevelLive __attribute__((swift_name("tierLevelLive"))); + +/** The users current tier progress in their \"tier_level\". This will be a number between 0 and 1. A tier progress of 0.5 means that the user has made 50% progress in their current tier. */ +@property (readonly) KASCFloat * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); + +/** Purchase amount between start_date and end_date. */ +@property (readonly) KASCFloat * _Nullable totalAmount __attribute__((swift_name("totalAmount"))); + +/** Purchase points between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalPoints __attribute__((swift_name("totalPoints"))); + +/** Purchase visits between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalVisits __attribute__((swift_name("totalVisits"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress__.Companion"))) +@interface KASCTierProgress__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierProgress__Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile balance data. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance_"))) +@interface KASCUserBalance_ : KASCBase +- (instancetype)initWithPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("init(points:giftcard:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBalance_Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile balance data. + */ +- (KASCUserBalance_ *)doCopyPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("doCopy(points:giftcard:)"))); + +/** + * User Profile balance data. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile balance data. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile balance data. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount of store credit in the users' e-wallet. */ +@property (readonly) KASCDouble * _Nullable giftcard __attribute__((swift_name("giftcard"))); + +/** The number of points this user currently has. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + + +/** + * User Profile balance data. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance_.Companion"))) +@interface KASCUserBalance_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile balance data. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBalance_Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile balance data. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_"))) +@interface KASCUserProfileDataModel_ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel_Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel_ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_.Companion"))) +@interface KASCUserProfileDataModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel_Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Extra user profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude_"))) +@interface KASCUserProfileInclude_ : KASCBase +- (instancetype)initWithBalance:(KASCUserBalance_ * _Nullable)balance tierLevel:(KASCTierLevel__ * _Nullable)tierLevel tierProgress:(KASCTierProgress__ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("init(balance:tierLevel:tierProgress:referralPrograms:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserProfileInclude_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Extra user profile data + */ +- (KASCUserProfileInclude_ *)doCopyBalance:(KASCUserBalance_ * _Nullable)balance tierLevel:(KASCTierLevel__ * _Nullable)tierLevel tierProgress:(KASCTierProgress__ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("doCopy(balance:tierLevel:tierProgress:referralPrograms:)"))); + +/** + * Extra user profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Extra user profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Extra user profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** User Profile balance data. */ +@property (readonly) KASCUserBalance_ * _Nullable balance __attribute__((swift_name("balance"))); + +/** A list of referral programs the user has access to. */ +@property (readonly) NSArray * _Nullable referralPrograms __attribute__((swift_name("referralPrograms"))); + +/** User's tier status. */ +@property (readonly) KASCTierLevel__ * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** User's tier progress and status. If a user's tier status is statically fixed, this will be null as they do not progress from tier to tier. */ +@property (readonly) KASCTierProgress__ * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); +@end + + +/** + * Extra user profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude_.Companion"))) +@interface KASCUserProfileInclude_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Extra user profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileInclude_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Extra user profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel"))) +@interface KASCUserProfileModel : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel_ * _Nullable)data included:(KASCUserProfileInclude_ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileModel *)doCopyData:(KASCUserProfileDataModel_ * _Nullable)data included:(KASCUserProfileInclude_ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user profile data */ +@property (readonly) KASCUserProfileDataModel_ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains user balance data */ +@property (readonly) KASCUserProfileInclude_ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel.Companion"))) +@interface KASCUserProfileModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get user profile data for this user. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileApi"))) +@interface KASCUserProfileApi : KASCApi + +/** + * Get user profile data for this user. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get user profile data for this user. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserProfileApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get user profile data for this user. + */ +- (KASCCFlow *> *)getUserProfile __attribute__((swift_name("getUserProfile()"))); +@property (readonly) KASCCFlow *> *userProfileState __attribute__((swift_name("userProfileState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileApi.Companion"))) +@interface KASCUserProfileApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_____"))) +@interface KASCLanguage_____ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_____Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_____ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_____.Companion"))) +@interface KASCLanguage_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A referral program + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram__"))) +@interface KASCReferralProgram__ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("init(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCReferralProgram__Companion *companion __attribute__((swift_name("companion"))); + +/** + * A referral program + */ +- (KASCReferralProgram__ *)doCopyId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("doCopy(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))); + +/** + * A referral program + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A referral program + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A referral program + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The minimum purchawe amount required for a succesful referral. */ +@property (readonly) KASCDouble * _Nullable condMinAmount __attribute__((swift_name("condMinAmount"))); + +/** Denotes whether this referral program is currently active. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The number of days the new customer has to sign up in order for a referral to be sucessful. */ +@property (readonly) KASCLong * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); + +/** The unique id of this referral program. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Denotes whether this referral program has enabled share links. Referral share links are links that the customer can send to prospective referrals. A User can sign up to the business through this link in order to complete the referral. */ +@property (readonly) KASCBoolean * _Nullable linkReferralEnabled __attribute__((swift_name("linkReferralEnabled"))); + +/** The number of points the new customer will earn. */ +@property (readonly) KASCLong * _Nullable refereeEarns __attribute__((swift_name("refereeEarns"))); + +/** The number of points the new customer who made the referral will earn. */ +@property (readonly) KASCLong * _Nullable refererEarns __attribute__((swift_name("refererEarns"))); + +/** A link that can be shared to prospective referrals. */ +@property (readonly) NSString * _Nullable referralLink __attribute__((swift_name("referralLink"))); +@property (readonly) NSString * _Nullable ruleName __attribute__((swift_name("ruleName"))); +@end + + +/** + * A referral program + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram__.Companion"))) +@interface KASCReferralProgram__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A referral program + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCReferralProgram__Companion *shared __attribute__((swift_name("shared"))); + +/** + * A referral program + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel___"))) +@interface KASCTierLevel___ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevel___Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier level. + */ +- (KASCTierLevel___ *)doCopyId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))); + +/** + * Represents a single tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The icon of this tier level. */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** The ID for this tier. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** translation for each tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); + +/** The name of this tier level. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount of points acquired that is required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachPoints __attribute__((swift_name("reachPoints"))); + +/** The amount of money spent required to reach this tier. */ +@property (readonly) KASCFloat * _Nullable reachSpend __attribute__((swift_name("reachSpend"))); + +/** The amount of visits made to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachVisits __attribute__((swift_name("reachVisits"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable tierPerks __attribute__((swift_name("tierPerks"))); +@end + + +/** + * Represents a single tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel___.Companion"))) +@interface KASCTierLevel___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevel___Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation___"))) +@interface KASCTierLevelTranslation___ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage_____ * _Nullable)language __attribute__((swift_name("init(languageId:name:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevelTranslation___Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierLevelTranslation___ *)doCopyLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage_____ * _Nullable)language __attribute__((swift_name("doCopy(languageId:name:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The description of this tier level as translated. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_____ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation___.Companion"))) +@interface KASCTierLevelTranslation___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevelTranslation___Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier perk for a tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk___"))) +@interface KASCTierPerk___ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerk___Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (KASCTierPerk___ *)doCopyId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Whether this tier perk is currently enabled or disabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The ID for this tier perk. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Whether the offer this tier perk is currently attached to is expired or not. */ +@property (readonly) KASCBoolean * _Nullable isExpired __attribute__((swift_name("isExpired"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); +@property (readonly) KASCLong * _Nullable offerId __attribute__((swift_name("offerId"))); +@property (readonly) KASCLong * _Nullable punchItemId __attribute__((swift_name("punchItemId"))); + +/** The ID for the tier level this tier perk is related to. */ +@property (readonly) KASCLong * _Nullable tierId __attribute__((swift_name("tierId"))); + +/** The title of this tier perk. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + + +/** + * Represents a single tier perk for a tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk___.Companion"))) +@interface KASCTierPerk___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier perk for a tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerk___Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation___"))) +@interface KASCTierPerkTranslation___ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage_____ * _Nullable)language __attribute__((swift_name("init(languageId:title:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerkTranslation___Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierPerkTranslation___ *)doCopyLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage_____ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_____ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation___.Companion"))) +@interface KASCTierPerkTranslation___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerkTranslation___Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress___"))) +@interface KASCTierProgress___ : KASCBase +- (instancetype)initWithStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("init(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierProgress___Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (KASCTierProgress___ *)doCopyStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("doCopy(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The end date for this tier session. The tier will be reset once this date is reached. */ +@property (readonly) NSString * _Nullable endDate __attribute__((swift_name("endDate"))); + +/** The amount of spend left in the user's current tier progress. Once they have acquired this many more amount of spend, they will be moved into the next tier. */ +@property (readonly) KASCFloat * _Nullable leftAmount __attribute__((swift_name("leftAmount"))); + +/** The amount of points left in the user's current tier progress. Once they have acquired this many more amount of points, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftPoints __attribute__((swift_name("leftPoints"))); + +/** The amount of visits left in the user's current tier progress. Once they have acquired this many more amount of visits, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftVisits __attribute__((swift_name("leftVisits"))); + +/** The name of the user's next tier level. */ +@property (readonly) NSString * _Nullable nextTierLevel __attribute__((swift_name("nextTierLevel"))); + +/** The start date for this tier session. */ +@property (readonly) NSString * _Nullable startDate __attribute__((swift_name("startDate"))); + +/** The name of the user's current tier level */ +@property (readonly) NSString * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** The name of the user's current tier level. Tiers are recalculated once per day, as such \"tier_level\" may not be completely up to date. */ +@property (readonly) NSString * _Nullable tierLevelLive __attribute__((swift_name("tierLevelLive"))); + +/** The users current tier progress in their \"tier_level\". This will be a number between 0 and 1. A tier progress of 0.5 means that the user has made 50% progress in their current tier. */ +@property (readonly) KASCFloat * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); + +/** Purchase amount between start_date and end_date. */ +@property (readonly) KASCFloat * _Nullable totalAmount __attribute__((swift_name("totalAmount"))); + +/** Purchase points between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalPoints __attribute__((swift_name("totalPoints"))); + +/** Purchase visits between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalVisits __attribute__((swift_name("totalVisits"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress___.Companion"))) +@interface KASCTierProgress___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierProgress___Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile balance data. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance__"))) +@interface KASCUserBalance__ : KASCBase +- (instancetype)initWithPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("init(points:giftcard:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBalance__Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile balance data. + */ +- (KASCUserBalance__ *)doCopyPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("doCopy(points:giftcard:)"))); + +/** + * User Profile balance data. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile balance data. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile balance data. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount of store credit in the users' e-wallet. */ +@property (readonly) KASCDouble * _Nullable giftcard __attribute__((swift_name("giftcard"))); + +/** The number of points this user currently has. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + + +/** + * User Profile balance data. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance__.Companion"))) +@interface KASCUserBalance__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile balance data. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBalance__Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile balance data. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel__"))) +@interface KASCUserProfileDataModel__ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel__Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel__ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel__.Companion"))) +@interface KASCUserProfileDataModel__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel__Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Extra user profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude__"))) +@interface KASCUserProfileInclude__ : KASCBase +- (instancetype)initWithBalance:(KASCUserBalance__ * _Nullable)balance tierLevel:(KASCTierLevel___ * _Nullable)tierLevel tierProgress:(KASCTierProgress___ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("init(balance:tierLevel:tierProgress:referralPrograms:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserProfileInclude__Companion *companion __attribute__((swift_name("companion"))); + +/** + * Extra user profile data + */ +- (KASCUserProfileInclude__ *)doCopyBalance:(KASCUserBalance__ * _Nullable)balance tierLevel:(KASCTierLevel___ * _Nullable)tierLevel tierProgress:(KASCTierProgress___ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("doCopy(balance:tierLevel:tierProgress:referralPrograms:)"))); + +/** + * Extra user profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Extra user profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Extra user profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** User Profile balance data. */ +@property (readonly) KASCUserBalance__ * _Nullable balance __attribute__((swift_name("balance"))); + +/** A list of referral programs the user has access to. */ +@property (readonly) NSArray * _Nullable referralPrograms __attribute__((swift_name("referralPrograms"))); + +/** User's tier status. */ +@property (readonly) KASCTierLevel___ * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** User's tier progress and status. If a user's tier status is statically fixed, this will be null as they do not progress from tier to tier. */ +@property (readonly) KASCTierProgress___ * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); +@end + + +/** + * Extra user profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude__.Companion"))) +@interface KASCUserProfileInclude__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Extra user profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileInclude__Companion *shared __attribute__((swift_name("shared"))); + +/** + * Extra user profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel_"))) +@interface KASCUserProfileModel_ : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel__ * _Nullable)data included:(KASCUserProfileInclude__ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileModel_Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileModel_ *)doCopyData:(KASCUserProfileDataModel__ * _Nullable)data included:(KASCUserProfileInclude__ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user profile data */ +@property (readonly) KASCUserProfileDataModel__ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains user balance data */ +@property (readonly) KASCUserProfileInclude__ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel_.Companion"))) +@interface KASCUserProfileModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileModel_Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Check in with a business. The user may be rewarded for this action according to rules set in the business portal on Kangaroo. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserCheckInApi"))) +@interface KASCUserCheckInApi : KASCApi + +/** + * Check in with a business. The user may be rewarded for this action according to rules set in the business portal on Kangaroo. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Check in with a business. The user may be rewarded for this action according to rules set in the business portal on Kangaroo. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserCheckInApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Check in with a business. The user may be rewarded for this action according to rules set in the business portal on Kangaroo. + */ +- (KASCCFlow *> *)userCheckInCheckInRequest:(KASCCheckInRequest *)checkInRequest __attribute__((swift_name("userCheckIn(checkInRequest:)"))); + +/** + * Check in with a business. The user may be rewarded for this action according to rules set in the business portal on Kangaroo. + * + * This method is used by the Native artifact when dealing with object body params + */ +- (KASCCFlow *> *)userCheckInMethods:(NSDictionary *)methods __attribute__((swift_name("userCheckIn(methods:)"))); +@property (readonly) KASCCFlow *> *userCheckInState __attribute__((swift_name("userCheckInState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserCheckInApi.Companion"))) +@interface KASCUserCheckInApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserCheckInApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CheckInDataModel"))) +@interface KASCCheckInDataModel : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id amount:(KASCDouble * _Nullable)amount points:(KASCInt * _Nullable)points name:(NSString * _Nullable)name createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt __attribute__((swift_name("init(id:amount:points:name:createdAt:updatedAt:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCCheckInDataModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCCheckInDataModel *)doCopyId:(KASCInt * _Nullable)id amount:(KASCDouble * _Nullable)amount points:(KASCInt * _Nullable)points name:(NSString * _Nullable)name createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt __attribute__((swift_name("doCopy(id:amount:points:name:createdAt:updatedAt:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@property (readonly) KASCInt * _Nullable points __attribute__((swift_name("points"))); +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CheckInDataModel.Companion"))) +@interface KASCCheckInDataModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCheckInDataModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CheckInRequest"))) +@interface KASCCheckInRequest : KASCBase +- (instancetype)initWithBranchId:(NSString *)branchId intent:(NSString *)intent __attribute__((swift_name("init(branchId:intent:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCCheckInRequestCompanion *companion __attribute__((swift_name("companion"))); +- (KASCCheckInRequest *)doCopyBranchId:(NSString *)branchId intent:(NSString *)intent __attribute__((swift_name("doCopy(branchId:intent:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *branchId __attribute__((swift_name("branchId"))); +@property (readonly) NSString *intent __attribute__((swift_name("intent"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CheckInRequest.Companion"))) +@interface KASCCheckInRequestCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCheckInRequestCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CheckInResponseModel"))) +@interface KASCCheckInResponseModel : KASCModel +- (instancetype)initWithData:(KASCCheckInDataModel * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCCheckInResponseModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCCheckInResponseModel *)doCopyData:(KASCCheckInDataModel * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user profile data */ +@property (readonly) KASCCheckInDataModel * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CheckInResponseModel.Companion"))) +@interface KASCCheckInResponseModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCheckInResponseModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get user A la carte list [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteProductsApi"))) +@interface KASCAlaCarteProductsApi : KASCApi + +/** + * Get user A la carte list [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get user A la carte list [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCAlaCarteProductsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get user A la carte list + */ +- (KASCCFlow *> *)getAlaCarteProducts __attribute__((swift_name("getAlaCarteProducts()"))); +@property (readonly) KASCCFlow *> *alaCarteProductsState __attribute__((swift_name("alaCarteProductsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteProductsApi.Companion"))) +@interface KASCAlaCarteProductsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCAlaCarteProductsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteItemModel"))) +@interface KASCAlaCarteItemModel : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id points:(KASCInt * _Nullable)points product:(KASCProduct * _Nullable)product __attribute__((swift_name("init(id:points:product:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCAlaCarteItemModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCAlaCarteItemModel *)doCopyId:(KASCInt * _Nullable)id points:(KASCInt * _Nullable)points product:(KASCProduct * _Nullable)product __attribute__((swift_name("doCopy(id:points:product:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCInt * _Nullable points __attribute__((swift_name("points"))); +@property (readonly) KASCProduct * _Nullable product __attribute__((swift_name("product"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteItemModel.Companion"))) +@interface KASCAlaCarteItemModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCAlaCarteItemModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User A la carte products model class containing user A la carte list + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteProductsModel"))) +@interface KASCAlaCarteProductsModel : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel___ * _Nullable)data included:(KASCUserAlaCarteIncluded * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCAlaCarteProductsModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * User A la carte products model class containing user A la carte list + */ +- (KASCAlaCarteProductsModel *)doCopyData:(KASCUserProfileDataModel___ * _Nullable)data included:(KASCUserAlaCarteIncluded * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User A la carte products model class containing user A la carte list + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User A la carte products model class containing user A la carte list + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User A la carte products model class containing user A la carte list + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user data */ +@property (readonly) KASCUserProfileDataModel___ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains all A la carte items */ +@property (readonly) KASCUserAlaCarteIncluded * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User A la carte products model class containing user A la carte list + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteProductsModel.Companion"))) +@interface KASCAlaCarteProductsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User A la carte products model class containing user A la carte list + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCAlaCarteProductsModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * User A la carte products model class containing user A la carte list + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images"))) +@interface KASCImages : KASCBase +- (instancetype)initWithPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(path:large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImagesCompanion *companion __attribute__((swift_name("companion"))); +- (KASCImages *)doCopyPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(path:large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable path __attribute__((swift_name("path"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images.Companion"))) +@interface KASCImagesCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImagesCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language______"))) +@interface KASCLanguage______ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage______Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage______ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language______.Companion"))) +@interface KASCLanguage______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages"))) +@interface KASCLanguages : KASCBase +- (instancetype)initWithLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage______ * _Nullable)language __attribute__((swift_name("init(languageId:title:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguagesCompanion *companion __attribute__((swift_name("companion"))); +- (KASCLanguages *)doCopyLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage______ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCLanguage______ * _Nullable language __attribute__((swift_name("language"))); +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages.Companion"))) +@interface KASCLanguagesCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguagesCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product"))) +@interface KASCProduct : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("init(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCProductCompanion *companion __attribute__((swift_name("companion"))); +- (KASCProduct *)doCopyId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("doCopy(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCFloat * _Nullable actualPrice __attribute__((swift_name("actualPrice"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) NSArray * _Nullable productLanguages __attribute__((swift_name("productLanguages"))); +@property (readonly) NSString * _Nullable productSku __attribute__((swift_name("productSku"))); +@property (readonly) KASCFloat * _Nullable realPrice __attribute__((swift_name("realPrice"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product.Companion"))) +@interface KASCProductCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCProductCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserAlaCarteIncluded"))) +@interface KASCUserAlaCarteIncluded : KASCBase +- (instancetype)initWithProductRewards:(NSArray * _Nullable)productRewards __attribute__((swift_name("init(productRewards:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserAlaCarteIncludedCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserAlaCarteIncluded *)doCopyProductRewards:(NSArray * _Nullable)productRewards __attribute__((swift_name("doCopy(productRewards:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable productRewards __attribute__((swift_name("productRewards"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserAlaCarteIncluded.Companion"))) +@interface KASCUserAlaCarteIncludedCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserAlaCarteIncludedCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel___"))) +@interface KASCUserProfileDataModel___ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel___Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel___ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel___.Companion"))) +@interface KASCUserProfileDataModel___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel___Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of rewards available to this user by specific business. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessRewardsApi"))) +@interface KASCUserBusinessRewardsApi : KASCApi + +/** + * Get a list of rewards available to this user by specific business. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of rewards available to this user by specific business. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserBusinessRewardsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of rewards available to this user by specific business. + */ +- (KASCCFlow *> *)getUserBusinessRewardsBusinessId:(NSString *)businessId __attribute__((swift_name("getUserBusinessRewards(businessId:)"))); +@property (readonly) KASCCFlow *> *userBusinessRewardsState __attribute__((swift_name("userBusinessRewardsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessRewardsApi.Companion"))) +@interface KASCUserBusinessRewardsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessRewardsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory_"))) +@interface KASCBusinessCategory_ : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("init(name:icon:code:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessCategory_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (KASCBusinessCategory_ *)doCopyName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("doCopy(name:icon:code:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique ategory code for this category */ +@property (readonly) NSString * _Nullable code __attribute__((swift_name("code"))); + +/** Url to this category's icon */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** Name of this category */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory_.Companion"))) +@interface KASCBusinessCategory_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessCategory_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData_"))) +@interface KASCBusinessData_ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage_ * _Nullable)logo logoTransparentBackground:(KASCImage_ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage_ * _Nullable)coverPhoto category:(KASCBusinessCategory_ * _Nullable)category __attribute__((swift_name("init(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessData_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Business profile data + */ +- (KASCBusinessData_ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage_ * _Nullable)logo logoTransparentBackground:(KASCImage_ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage_ * _Nullable)coverPhoto category:(KASCBusinessCategory_ * _Nullable)category __attribute__((swift_name("doCopy(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))); + +/** + * Business profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** General about text for the business */ +@property (readonly) NSString * _Nullable about __attribute__((swift_name("about"))); +@property (readonly) KASCBusinessCategory_ * _Nullable category __attribute__((swift_name("category"))); + +/** Whether this is a conglomerate business. Conglomerate businesses are umbrellas for multiple business' in Kangaroo */ +@property (readonly) NSString * _Nullable conglomerate __attribute__((swift_name("conglomerate"))); +@property (readonly) KASCImage_ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique business ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage_ * _Nullable logo __attribute__((swift_name("logo"))); +@property (readonly) KASCImage_ * _Nullable logoTransparentBackground __attribute__((swift_name("logoTransparentBackground"))); + +/** The manner in which this business rewards its customers. This can be by purchase amount of by visit to the store */ +@property (readonly) NSString * _Nullable loyaltyType __attribute__((swift_name("loyaltyType"))); + +/** The name of this business */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** Whether this is a white label business. White label business' don't appear in the Kangaroo Mobile Customer app, as they usually have their own app. */ +@property (readonly) NSString * _Nullable whiteLabel __attribute__((swift_name("whiteLabel"))); +@end + + +/** + * Business profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData_.Companion"))) +@interface KASCBusinessData_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessData_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Business profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_"))) +@interface KASCImage_ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage_Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage_ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_.Companion"))) +@interface KASCImage_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_______"))) +@interface KASCLanguage_______ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_______Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_______ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_______.Companion"))) +@interface KASCLanguage_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardModel"))) +@interface KASCRewardModel : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished amount:(KASCFloat * _Nullable)amount realValue:(KASCFloat * _Nullable)realValue discountValue:(KASCFloat * _Nullable)discountValue partnerReward:(KASCBoolean * _Nullable)partnerReward redeemForGiftCard:(KASCBoolean * _Nullable)redeemForGiftCard type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link rewardLanguages:(NSArray * _Nullable)rewardLanguages __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:amount:realValue:discountValue:partnerReward:redeemForGiftCard:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:rewardLanguages:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCRewardModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCRewardModel *)doCopyId:(KASCInt * _Nullable)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished amount:(KASCFloat * _Nullable)amount realValue:(KASCFloat * _Nullable)realValue discountValue:(KASCFloat * _Nullable)discountValue partnerReward:(KASCBoolean * _Nullable)partnerReward redeemForGiftCard:(KASCBoolean * _Nullable)redeemForGiftCard type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link rewardLanguages:(NSArray * _Nullable)rewardLanguages __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:amount:realValue:discountValue:partnerReward:redeemForGiftCard:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:rewardLanguages:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCFloat * _Nullable amount __attribute__((swift_name("amount"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCFloat * _Nullable discountValue __attribute__((swift_name("discountValue"))); +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); + +/** A unique ID identifying this reward */ +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCBoolean * _Nullable partnerReward __attribute__((swift_name("partnerReward"))); +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); +@property (readonly) KASCFloat * _Nullable realValue __attribute__((swift_name("realValue"))); +@property (readonly) KASCBoolean * _Nullable redeemForGiftCard __attribute__((swift_name("redeemForGiftCard"))); +@property (readonly) NSArray * _Nullable rewardLanguages __attribute__((swift_name("rewardLanguages"))); +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardModel.Companion"))) +@interface KASCRewardModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRewardModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardTranslation_"))) +@interface KASCRewardTranslation_ : KASCBase +- (instancetype)initWithId:(KASCInt * _Nullable)id languageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link language:(KASCLanguage_______ * _Nullable)language __attribute__((swift_name("init(id:languageId:title:description:termsConditions:link:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCRewardTranslation_Companion *companion __attribute__((swift_name("companion"))); +- (KASCRewardTranslation_ *)doCopyId:(KASCInt * _Nullable)id languageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link language:(KASCLanguage_______ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:title:description:termsConditions:link:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCLanguage_______ * _Nullable language __attribute__((swift_name("language"))); +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardTranslation_.Companion"))) +@interface KASCRewardTranslation_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRewardTranslation_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessRewardsModel"))) +@interface KASCUserBusinessRewardsModel : KASCModel +- (instancetype)initWithData:(KASCBusinessData_ * _Nullable)data included:(KASCUserRewardsData * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserBusinessRewardsModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserBusinessRewardsModel *)doCopyData:(KASCBusinessData_ * _Nullable)data included:(KASCUserRewardsData * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains business data */ +@property (readonly) KASCBusinessData_ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains all rewards items */ +@property (readonly) KASCUserRewardsData * _Nullable included __attribute__((swift_name("included"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessRewardsModel.Companion"))) +@interface KASCUserBusinessRewardsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessRewardsModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserRewardsData"))) +@interface KASCUserRewardsData : KASCBase +- (instancetype)initWithCatalogItems:(NSArray * _Nullable)catalogItems __attribute__((swift_name("init(catalogItems:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserRewardsDataCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserRewardsData *)doCopyCatalogItems:(NSArray * _Nullable)catalogItems __attribute__((swift_name("doCopy(catalogItems:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains a list of all rewards available to this user */ +@property (readonly) NSArray * _Nullable catalogItems __attribute__((swift_name("catalogItems"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserRewardsData.Companion"))) +@interface KASCUserRewardsDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserRewardsDataCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get user A la carte list by specific business [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessAlaCarteProductsApi"))) +@interface KASCUserBusinessAlaCarteProductsApi : KASCApi + +/** + * Get user A la carte list by specific business [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get user A la carte list by specific business [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserBusinessAlaCarteProductsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get user A la carte list by specific business + */ +- (KASCCFlow *> *)getUserBusinessAlaCarteProductsBusinessId:(NSString *)businessId __attribute__((swift_name("getUserBusinessAlaCarteProducts(businessId:)"))); +@property (readonly) KASCCFlow *> *userBusinessAlaCarteProductsState __attribute__((swift_name("userBusinessAlaCarteProductsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessAlaCarteProductsApi.Companion"))) +@interface KASCUserBusinessAlaCarteProductsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessAlaCarteProductsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteItemModel_"))) +@interface KASCAlaCarteItemModel_ : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id points:(KASCInt * _Nullable)points product:(KASCProduct_ * _Nullable)product __attribute__((swift_name("init(id:points:product:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCAlaCarteItemModel_Companion *companion __attribute__((swift_name("companion"))); +- (KASCAlaCarteItemModel_ *)doCopyId:(KASCInt * _Nullable)id points:(KASCInt * _Nullable)points product:(KASCProduct_ * _Nullable)product __attribute__((swift_name("doCopy(id:points:product:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCInt * _Nullable points __attribute__((swift_name("points"))); +@property (readonly) KASCProduct_ * _Nullable product __attribute__((swift_name("product"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteItemModel_.Companion"))) +@interface KASCAlaCarteItemModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCAlaCarteItemModel_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User A la carte products model class containing user A la carte list + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteProductsModel_"))) +@interface KASCAlaCarteProductsModel_ : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel____ * _Nullable)data included:(KASCUserAlaCarteIncluded_ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCAlaCarteProductsModel_Companion *companion __attribute__((swift_name("companion"))); + +/** + * User A la carte products model class containing user A la carte list + */ +- (KASCAlaCarteProductsModel_ *)doCopyData:(KASCUserProfileDataModel____ * _Nullable)data included:(KASCUserAlaCarteIncluded_ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User A la carte products model class containing user A la carte list + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User A la carte products model class containing user A la carte list + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User A la carte products model class containing user A la carte list + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user data */ +@property (readonly) KASCUserProfileDataModel____ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains all A la carte items */ +@property (readonly) KASCUserAlaCarteIncluded_ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User A la carte products model class containing user A la carte list + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteProductsModel_.Companion"))) +@interface KASCAlaCarteProductsModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User A la carte products model class containing user A la carte list + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCAlaCarteProductsModel_Companion *shared __attribute__((swift_name("shared"))); + +/** + * User A la carte products model class containing user A la carte list + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images_"))) +@interface KASCImages_ : KASCBase +- (instancetype)initWithPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(path:large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImages_Companion *companion __attribute__((swift_name("companion"))); +- (KASCImages_ *)doCopyPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(path:large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable path __attribute__((swift_name("path"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images_.Companion"))) +@interface KASCImages_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImages_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language________"))) +@interface KASCLanguage________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language________.Companion"))) +@interface KASCLanguage________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages_"))) +@interface KASCLanguages_ : KASCBase +- (instancetype)initWithLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage________ * _Nullable)language __attribute__((swift_name("init(languageId:title:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguages_Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguages_ *)doCopyLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCLanguage________ * _Nullable language __attribute__((swift_name("language"))); +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages_.Companion"))) +@interface KASCLanguages_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguages_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product_"))) +@interface KASCProduct_ : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("init(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCProduct_Companion *companion __attribute__((swift_name("companion"))); +- (KASCProduct_ *)doCopyId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("doCopy(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCFloat * _Nullable actualPrice __attribute__((swift_name("actualPrice"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) NSArray * _Nullable productLanguages __attribute__((swift_name("productLanguages"))); +@property (readonly) NSString * _Nullable productSku __attribute__((swift_name("productSku"))); +@property (readonly) KASCFloat * _Nullable realPrice __attribute__((swift_name("realPrice"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product_.Companion"))) +@interface KASCProduct_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCProduct_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserAlaCarteIncluded_"))) +@interface KASCUserAlaCarteIncluded_ : KASCBase +- (instancetype)initWithProductRewards:(NSArray * _Nullable)productRewards __attribute__((swift_name("init(productRewards:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserAlaCarteIncluded_Companion *companion __attribute__((swift_name("companion"))); +- (KASCUserAlaCarteIncluded_ *)doCopyProductRewards:(NSArray * _Nullable)productRewards __attribute__((swift_name("doCopy(productRewards:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable productRewards __attribute__((swift_name("productRewards"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserAlaCarteIncluded_.Companion"))) +@interface KASCUserAlaCarteIncluded_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserAlaCarteIncluded_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel____"))) +@interface KASCUserProfileDataModel____ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel____Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel____ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel____.Companion"))) +@interface KASCUserProfileDataModel____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel____Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Update a users' profile [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileUpdateApi"))) +@interface KASCUserProfileUpdateApi : KASCApi + +/** + * Update a users' profile [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Update a users' profile [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserProfileUpdateApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Update a users' profile + */ +- (KASCCFlow *> *)updateUserProfileFirstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language gender:(NSString * _Nullable)gender profilePhoto:(NSString * _Nullable)profilePhoto __attribute__((swift_name("updateUserProfile(firstName:lastName:birthDate:language:gender:profilePhoto:)"))); +@property (readonly) KASCCFlow *> *userProfileUpdateState __attribute__((swift_name("userProfileUpdateState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileUpdateApi.Companion"))) +@interface KASCUserProfileUpdateApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileUpdateApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_________"))) +@interface KASCLanguage_________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_________.Companion"))) +@interface KASCLanguage_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A referral program + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram___"))) +@interface KASCReferralProgram___ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("init(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCReferralProgram___Companion *companion __attribute__((swift_name("companion"))); + +/** + * A referral program + */ +- (KASCReferralProgram___ *)doCopyId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("doCopy(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))); + +/** + * A referral program + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A referral program + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A referral program + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The minimum purchawe amount required for a succesful referral. */ +@property (readonly) KASCDouble * _Nullable condMinAmount __attribute__((swift_name("condMinAmount"))); + +/** Denotes whether this referral program is currently active. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The number of days the new customer has to sign up in order for a referral to be sucessful. */ +@property (readonly) KASCLong * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); + +/** The unique id of this referral program. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Denotes whether this referral program has enabled share links. Referral share links are links that the customer can send to prospective referrals. A User can sign up to the business through this link in order to complete the referral. */ +@property (readonly) KASCBoolean * _Nullable linkReferralEnabled __attribute__((swift_name("linkReferralEnabled"))); + +/** The number of points the new customer will earn. */ +@property (readonly) KASCLong * _Nullable refereeEarns __attribute__((swift_name("refereeEarns"))); + +/** The number of points the new customer who made the referral will earn. */ +@property (readonly) KASCLong * _Nullable refererEarns __attribute__((swift_name("refererEarns"))); + +/** A link that can be shared to prospective referrals. */ +@property (readonly) NSString * _Nullable referralLink __attribute__((swift_name("referralLink"))); +@property (readonly) NSString * _Nullable ruleName __attribute__((swift_name("ruleName"))); +@end + + +/** + * A referral program + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram___.Companion"))) +@interface KASCReferralProgram___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A referral program + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCReferralProgram___Companion *shared __attribute__((swift_name("shared"))); + +/** + * A referral program + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel____"))) +@interface KASCTierLevel____ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevel____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier level. + */ +- (KASCTierLevel____ *)doCopyId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))); + +/** + * Represents a single tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The icon of this tier level. */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** The ID for this tier. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** translation for each tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); + +/** The name of this tier level. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount of points acquired that is required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachPoints __attribute__((swift_name("reachPoints"))); + +/** The amount of money spent required to reach this tier. */ +@property (readonly) KASCFloat * _Nullable reachSpend __attribute__((swift_name("reachSpend"))); + +/** The amount of visits made to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachVisits __attribute__((swift_name("reachVisits"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable tierPerks __attribute__((swift_name("tierPerks"))); +@end + + +/** + * Represents a single tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel____.Companion"))) +@interface KASCTierLevel____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevel____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation____"))) +@interface KASCTierLevelTranslation____ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage_________ * _Nullable)language __attribute__((swift_name("init(languageId:name:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevelTranslation____Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierLevelTranslation____ *)doCopyLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage_________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:name:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The description of this tier level as translated. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation____.Companion"))) +@interface KASCTierLevelTranslation____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevelTranslation____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier perk for a tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk____"))) +@interface KASCTierPerk____ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerk____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (KASCTierPerk____ *)doCopyId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Whether this tier perk is currently enabled or disabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The ID for this tier perk. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Whether the offer this tier perk is currently attached to is expired or not. */ +@property (readonly) KASCBoolean * _Nullable isExpired __attribute__((swift_name("isExpired"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); +@property (readonly) KASCLong * _Nullable offerId __attribute__((swift_name("offerId"))); +@property (readonly) KASCLong * _Nullable punchItemId __attribute__((swift_name("punchItemId"))); + +/** The ID for the tier level this tier perk is related to. */ +@property (readonly) KASCLong * _Nullable tierId __attribute__((swift_name("tierId"))); + +/** The title of this tier perk. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + + +/** + * Represents a single tier perk for a tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk____.Companion"))) +@interface KASCTierPerk____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier perk for a tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerk____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation____"))) +@interface KASCTierPerkTranslation____ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage_________ * _Nullable)language __attribute__((swift_name("init(languageId:title:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerkTranslation____Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierPerkTranslation____ *)doCopyLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage_________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation____.Companion"))) +@interface KASCTierPerkTranslation____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerkTranslation____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress____"))) +@interface KASCTierProgress____ : KASCBase +- (instancetype)initWithStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("init(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierProgress____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (KASCTierProgress____ *)doCopyStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("doCopy(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The end date for this tier session. The tier will be reset once this date is reached. */ +@property (readonly) NSString * _Nullable endDate __attribute__((swift_name("endDate"))); + +/** The amount of spend left in the user's current tier progress. Once they have acquired this many more amount of spend, they will be moved into the next tier. */ +@property (readonly) KASCFloat * _Nullable leftAmount __attribute__((swift_name("leftAmount"))); + +/** The amount of points left in the user's current tier progress. Once they have acquired this many more amount of points, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftPoints __attribute__((swift_name("leftPoints"))); + +/** The amount of visits left in the user's current tier progress. Once they have acquired this many more amount of visits, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftVisits __attribute__((swift_name("leftVisits"))); + +/** The name of the user's next tier level. */ +@property (readonly) NSString * _Nullable nextTierLevel __attribute__((swift_name("nextTierLevel"))); + +/** The start date for this tier session. */ +@property (readonly) NSString * _Nullable startDate __attribute__((swift_name("startDate"))); + +/** The name of the user's current tier level */ +@property (readonly) NSString * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** The name of the user's current tier level. Tiers are recalculated once per day, as such \"tier_level\" may not be completely up to date. */ +@property (readonly) NSString * _Nullable tierLevelLive __attribute__((swift_name("tierLevelLive"))); + +/** The users current tier progress in their \"tier_level\". This will be a number between 0 and 1. A tier progress of 0.5 means that the user has made 50% progress in their current tier. */ +@property (readonly) KASCFloat * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); + +/** Purchase amount between start_date and end_date. */ +@property (readonly) KASCFloat * _Nullable totalAmount __attribute__((swift_name("totalAmount"))); + +/** Purchase points between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalPoints __attribute__((swift_name("totalPoints"))); + +/** Purchase visits between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalVisits __attribute__((swift_name("totalVisits"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress____.Companion"))) +@interface KASCTierProgress____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierProgress____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile balance data. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance___"))) +@interface KASCUserBalance___ : KASCBase +- (instancetype)initWithPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("init(points:giftcard:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBalance___Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile balance data. + */ +- (KASCUserBalance___ *)doCopyPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("doCopy(points:giftcard:)"))); + +/** + * User Profile balance data. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile balance data. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile balance data. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount of store credit in the users' e-wallet. */ +@property (readonly) KASCDouble * _Nullable giftcard __attribute__((swift_name("giftcard"))); + +/** The number of points this user currently has. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + + +/** + * User Profile balance data. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance___.Companion"))) +@interface KASCUserBalance___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile balance data. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBalance___Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile balance data. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_____"))) +@interface KASCUserProfileDataModel_____ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel_____Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel_____ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_____.Companion"))) +@interface KASCUserProfileDataModel_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel_____Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Extra user profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude___"))) +@interface KASCUserProfileInclude___ : KASCBase +- (instancetype)initWithBalance:(KASCUserBalance___ * _Nullable)balance tierLevel:(KASCTierLevel____ * _Nullable)tierLevel tierProgress:(KASCTierProgress____ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("init(balance:tierLevel:tierProgress:referralPrograms:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserProfileInclude___Companion *companion __attribute__((swift_name("companion"))); + +/** + * Extra user profile data + */ +- (KASCUserProfileInclude___ *)doCopyBalance:(KASCUserBalance___ * _Nullable)balance tierLevel:(KASCTierLevel____ * _Nullable)tierLevel tierProgress:(KASCTierProgress____ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("doCopy(balance:tierLevel:tierProgress:referralPrograms:)"))); + +/** + * Extra user profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Extra user profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Extra user profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** User Profile balance data. */ +@property (readonly) KASCUserBalance___ * _Nullable balance __attribute__((swift_name("balance"))); + +/** A list of referral programs the user has access to. */ +@property (readonly) NSArray * _Nullable referralPrograms __attribute__((swift_name("referralPrograms"))); + +/** User's tier status. */ +@property (readonly) KASCTierLevel____ * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** User's tier progress and status. If a user's tier status is statically fixed, this will be null as they do not progress from tier to tier. */ +@property (readonly) KASCTierProgress____ * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); +@end + + +/** + * Extra user profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude___.Companion"))) +@interface KASCUserProfileInclude___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Extra user profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileInclude___Companion *shared __attribute__((swift_name("shared"))); + +/** + * Extra user profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel__"))) +@interface KASCUserProfileModel__ : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel_____ * _Nullable)data included:(KASCUserProfileInclude___ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileModel__Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileModel__ *)doCopyData:(KASCUserProfileDataModel_____ * _Nullable)data included:(KASCUserProfileInclude___ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user profile data */ +@property (readonly) KASCUserProfileDataModel_____ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains user balance data */ +@property (readonly) KASCUserProfileInclude___ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel__.Companion"))) +@interface KASCUserProfileModel__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileModel__Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Deposit a giftcard [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardDepositApi"))) +@interface KASCGiftCardDepositApi : KASCApi + +/** + * Deposit a giftcard [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Deposit a giftcard [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCGiftCardDepositApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Deposit a giftcard + */ +- (KASCCFlow *> *)depositGiftCardDepositId:(NSString *)depositId __attribute__((swift_name("depositGiftCard(depositId:)"))); +@property (readonly) KASCCFlow *> *giftCardDepositState __attribute__((swift_name("giftCardDepositState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardDepositApi.Companion"))) +@interface KASCGiftCardDepositApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardDepositApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image__"))) +@interface KASCImage__ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage__Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage__ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image__.Companion"))) +@interface KASCImage__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language__________"))) +@interface KASCLanguage__________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage__________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage__________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language__________.Companion"))) +@interface KASCLanguage__________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage__________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction"))) +@interface KASCOfferAction : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferActionCompanion *companion __attribute__((swift_name("companion"))); +- (KASCOfferAction *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction.Companion"))) +@interface KASCOfferActionCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferActionCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel"))) +@interface KASCOfferModel : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCOfferModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCOfferModel *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this offer. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** Whether this offer must be claimed on a mobile app before being used in store. */ +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The offer description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this offer. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isCouponRedeemed __attribute__((swift_name("isCouponRedeemed"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this offer. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** The maximum purchase amount for this offer to be applied. */ +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); + +/** The minimum purchase amount for this offer to be applied */ +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); + +/** The multiplication factor of this offer. This only applies to Point Multiplier offers. */ +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this offer ever expires or not. If false, this offer is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this offer into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); + +/** The amount of points required for this offer to be applied. Only used for Convertible Coupons */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this offer */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this offer. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The offer title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This can be a free product, dollar based discount, percentage based discount, point multiplier, bonus points, and free shipping. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel.Companion"))) +@interface KASCOfferModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this offer. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation"))) +@interface KASCOfferTranslation : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage__________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferTranslationCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this offer. + */ +- (KASCOfferTranslation *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage__________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))); + +/** + * A language translation of this offer. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this offer. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this offer. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** where is this coupon available at. */ +@property (readonly) NSString * _Nullable couponAvailableAt __attribute__((swift_name("couponAvailableAt"))); + +/** The translated coupon description. */ +@property (readonly) NSString * _Nullable couponDescription __attribute__((swift_name("couponDescription"))); + +/** The language appropriate link of this coupon. */ +@property (readonly) NSString * _Nullable couponLink __attribute__((swift_name("couponLink"))); + +/** The translated coupon terms and conditions. */ +@property (readonly) NSString * _Nullable couponTermsConditions __attribute__((swift_name("couponTermsConditions"))); + +/** The translated coupon title. */ +@property (readonly) NSString * _Nullable couponTitle __attribute__((swift_name("couponTitle"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage__________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated offer description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this offer. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated offer terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated offer title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this offer. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation.Companion"))) +@interface KASCOfferTranslationCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this offer. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferTranslationCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this offer. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Contains the result of a transfer action. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferActionResultModel"))) +@interface KASCTransferActionResultModel : KASCModel +- (instancetype)initWithData:(KASCTransferMessage * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCTransferActionResultModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Contains the result of a transfer action. + */ +- (KASCTransferActionResultModel *)doCopyData:(KASCTransferMessage * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * Contains the result of a transfer action. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Contains the result of a transfer action. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Contains the result of a transfer action. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCTransferMessage * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * Contains the result of a transfer action. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferActionResultModel.Companion"))) +@interface KASCTransferActionResultModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Contains the result of a transfer action. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferActionResultModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Contains the result of a transfer action. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessage"))) +@interface KASCTransferMessage : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id typeId:(KASCLong * _Nullable)typeId type:(NSString * _Nullable)type description:(NSString * _Nullable)description points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount hidden:(KASCBoolean * _Nullable)hidden createdAt:(NSString * _Nullable)createdAt offer:(KASCOfferModel * _Nullable)offer giftCardQueue:(KASCTransferMessageGiftCardQueue * _Nullable)giftCardQueue actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:typeId:type:description:points:amount:hidden:createdAt:offer:giftCardQueue:actions:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransferMessageCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (KASCTransferMessage *)doCopyId:(KASCLong * _Nullable)id typeId:(KASCLong * _Nullable)typeId type:(NSString * _Nullable)type description:(NSString * _Nullable)description points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount hidden:(KASCBoolean * _Nullable)hidden createdAt:(NSString * _Nullable)createdAt offer:(KASCOfferModel * _Nullable)offer giftCardQueue:(KASCTransferMessageGiftCardQueue * _Nullable)giftCardQueue actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:typeId:type:description:points:amount:hidden:createdAt:offer:giftCardQueue:actions:)"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** The amount in $ sent in this transfer. */ +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); + +/** The orignal send date of this transfer. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** The description of this transfer. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCTransferMessageGiftCardQueue * _Nullable giftCardQueue __attribute__((swift_name("giftCardQueue"))); +@property (readonly) KASCBoolean * _Nullable hidden __attribute__((swift_name("hidden"))); + +/** The unique ID of this transfer. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** The gift card in this transfer if applicable. Gift cards are an offer sub-type in Kangaroo. */ +@property (readonly) KASCOfferModel * _Nullable offer __attribute__((swift_name("offer"))); + +/** The amount of points sent in this transfer. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** A string representation of this transfer type. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); + +/** The type ID of this transfer. */ +@property (readonly) KASCLong * _Nullable typeId __attribute__((swift_name("typeId"))); +@end + + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessage.Companion"))) +@interface KASCTransferMessageCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferMessageCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageActions"))) +@interface KASCTransferMessageActions : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransferMessageActionsCompanion *companion __attribute__((swift_name("companion"))); +- (KASCTransferMessageActions *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The action type. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageActions.Companion"))) +@interface KASCTransferMessageActionsCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferMessageActionsCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageGiftCardQueue"))) +@interface KASCTransferMessageGiftCardQueue : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id enabled:(KASCBoolean * _Nullable)enabled senderName:(NSString * _Nullable)senderName recipientName:(NSString * _Nullable)recipientName emailPhone:(NSString * _Nullable)emailPhone points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount createdAt:(NSString * _Nullable)createdAt scheduledAt:(NSString * _Nullable)scheduledAt __attribute__((swift_name("init(id:enabled:senderName:recipientName:emailPhone:points:amount:createdAt:scheduledAt:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransferMessageGiftCardQueueCompanion *companion __attribute__((swift_name("companion"))); +- (KASCTransferMessageGiftCardQueue *)doCopyId:(KASCLong * _Nullable)id enabled:(KASCBoolean * _Nullable)enabled senderName:(NSString * _Nullable)senderName recipientName:(NSString * _Nullable)recipientName emailPhone:(NSString * _Nullable)emailPhone points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount createdAt:(NSString * _Nullable)createdAt scheduledAt:(NSString * _Nullable)scheduledAt __attribute__((swift_name("doCopy(id:enabled:senderName:recipientName:emailPhone:points:amount:createdAt:scheduledAt:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount in $ sent in this transfer. */ +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); + +/** The orignal creation date of this transfer. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** The phone number or email address that this transfer was sent to. */ +@property (readonly) NSString * _Nullable emailPhone __attribute__((swift_name("emailPhone"))); + +/** Whether this item is enabled. Usually true. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The unique ID of this gift_card_queue */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** The amount of points sent in this transfer. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The name of the recipient of this transfer. */ +@property (readonly) NSString * _Nullable recipientName __attribute__((swift_name("recipientName"))); + +/** The original scheduled delivery date of this transfer. */ +@property (readonly) NSString * _Nullable scheduledAt __attribute__((swift_name("scheduledAt"))); + +/** The name of the sender of this transfer. */ +@property (readonly) NSString * _Nullable senderName __attribute__((swift_name("senderName"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageGiftCardQueue.Companion"))) +@interface KASCTransferMessageGiftCardQueueCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferMessageGiftCardQueueCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get public A la carte products list [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicAlaCarteProductsApi"))) +@interface KASCPublicAlaCarteProductsApi : KASCApi + +/** + * Get public A la carte products list [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get public A la carte products list [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCPublicAlaCarteProductsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get public A la carte products list + */ +- (KASCCFlow *> *)getPublicAlaCarteProducts __attribute__((swift_name("getPublicAlaCarteProducts()"))); +@property (readonly) KASCCFlow *> *publicAlaCarteProductsState __attribute__((swift_name("publicAlaCarteProductsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicAlaCarteProductsApi.Companion"))) +@interface KASCPublicAlaCarteProductsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicAlaCarteProductsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteItemModel__"))) +@interface KASCAlaCarteItemModel__ : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id points:(KASCInt * _Nullable)points product:(KASCProduct__ * _Nullable)product __attribute__((swift_name("init(id:points:product:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCAlaCarteItemModel__Companion *companion __attribute__((swift_name("companion"))); +- (KASCAlaCarteItemModel__ *)doCopyId:(KASCInt * _Nullable)id points:(KASCInt * _Nullable)points product:(KASCProduct__ * _Nullable)product __attribute__((swift_name("doCopy(id:points:product:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCInt * _Nullable points __attribute__((swift_name("points"))); +@property (readonly) KASCProduct__ * _Nullable product __attribute__((swift_name("product"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteItemModel__.Companion"))) +@interface KASCAlaCarteItemModel__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCAlaCarteItemModel__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images__"))) +@interface KASCImages__ : KASCBase +- (instancetype)initWithPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(path:large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImages__Companion *companion __attribute__((swift_name("companion"))); +- (KASCImages__ *)doCopyPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(path:large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable path __attribute__((swift_name("path"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images__.Companion"))) +@interface KASCImages__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImages__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language___________"))) +@interface KASCLanguage___________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage___________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage___________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language___________.Companion"))) +@interface KASCLanguage___________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage___________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages__"))) +@interface KASCLanguages__ : KASCBase +- (instancetype)initWithLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage___________ * _Nullable)language __attribute__((swift_name("init(languageId:title:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguages__Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguages__ *)doCopyLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage___________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCLanguage___________ * _Nullable language __attribute__((swift_name("language"))); +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages__.Companion"))) +@interface KASCLanguages__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguages__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product__"))) +@interface KASCProduct__ : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("init(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCProduct__Companion *companion __attribute__((swift_name("companion"))); +- (KASCProduct__ *)doCopyId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("doCopy(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCFloat * _Nullable actualPrice __attribute__((swift_name("actualPrice"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) NSArray * _Nullable productLanguages __attribute__((swift_name("productLanguages"))); +@property (readonly) NSString * _Nullable productSku __attribute__((swift_name("productSku"))); +@property (readonly) KASCFloat * _Nullable realPrice __attribute__((swift_name("realPrice"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product__.Companion"))) +@interface KASCProduct__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCProduct__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A list of a la carte products available to all users. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicALaCarteProductsModel"))) +@interface KASCPublicALaCarteProductsModel : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCPublicALaCarteProductsModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A list of a la carte products available to all users. + */ +- (KASCPublicALaCarteProductsModel *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * A list of a la carte products available to all users. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A list of a la carte products available to all users. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A list of a la carte products available to all users. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of a la carte products available to all users. */ +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * A list of a la carte products available to all users. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicALaCarteProductsModel.Companion"))) +@interface KASCPublicALaCarteProductsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A list of a la carte products available to all users. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicALaCarteProductsModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A list of a la carte products available to all users. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Create a paypal payment [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PayPalPaymentApi"))) +@interface KASCPayPalPaymentApi : KASCApi + +/** + * Create a paypal payment [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Create a paypal payment [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCPayPalPaymentApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Create a paypal payment + */ +- (KASCCFlow *> *)makePayPalPaymentIntent:(NSString *)intent provider:(NSString *)provider giftcardId:(int32_t)giftcardId paypalReturnUrl:(NSString *)paypalReturnUrl paypalCancelUrl:(NSString *)paypalCancelUrl __attribute__((swift_name("makePayPalPayment(intent:provider:giftcardId:paypalReturnUrl:paypalCancelUrl:)"))); +@property (readonly) KASCCFlow *> *payPalPaymentState __attribute__((swift_name("payPalPaymentState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PayPalPaymentApi.Companion"))) +@interface KASCPayPalPaymentApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPayPalPaymentApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * A paypal payment response data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PayPalPayment"))) +@interface KASCPayPalPayment : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id provider:(NSString * _Nullable)provider status:(NSString * _Nullable)status approvalUrl:(NSString * _Nullable)approvalUrl giftcard:(KASCPayPalPaymentGiftCard * _Nullable)giftcard __attribute__((swift_name("init(id:provider:status:approvalUrl:giftcard:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCPayPalPaymentCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A paypal payment response data + */ +- (KASCPayPalPayment *)doCopyId:(NSString * _Nullable)id provider:(NSString * _Nullable)provider status:(NSString * _Nullable)status approvalUrl:(NSString * _Nullable)approvalUrl giftcard:(KASCPayPalPaymentGiftCard * _Nullable)giftcard __attribute__((swift_name("doCopy(id:provider:status:approvalUrl:giftcard:)"))); + +/** + * A paypal payment response data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A paypal payment response data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A paypal payment response data + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable approvalUrl __attribute__((swift_name("approvalUrl"))); + +/** A giftcard received from a paypal payment */ +@property (readonly) KASCPayPalPaymentGiftCard * _Nullable giftcard __attribute__((swift_name("giftcard"))); + +/** Unique payment ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSString * _Nullable provider __attribute__((swift_name("provider"))); +@property (readonly) NSString * _Nullable status __attribute__((swift_name("status"))); +@end + + +/** + * A paypal payment response data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PayPalPayment.Companion"))) +@interface KASCPayPalPaymentCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A paypal payment response data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPayPalPaymentCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A paypal payment response data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A giftcard received from a paypal payment + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PayPalPaymentGiftCard"))) +@interface KASCPayPalPaymentGiftCard : KASCBase +- (instancetype)initWithId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title price:(KASCFloat * _Nullable)price currency:(NSString * _Nullable)currency quantity:(KASCInt * _Nullable)quantity __attribute__((swift_name("init(id:title:price:currency:quantity:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCPayPalPaymentGiftCardCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A giftcard received from a paypal payment + */ +- (KASCPayPalPaymentGiftCard *)doCopyId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title price:(KASCFloat * _Nullable)price currency:(NSString * _Nullable)currency quantity:(KASCInt * _Nullable)quantity __attribute__((swift_name("doCopy(id:title:price:currency:quantity:)"))); + +/** + * A giftcard received from a paypal payment + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A giftcard received from a paypal payment + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A giftcard received from a paypal payment + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable currency __attribute__((swift_name("currency"))); + +/** Unique gift card ID. */ +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCFloat * _Nullable price __attribute__((swift_name("price"))); +@property (readonly) KASCInt * _Nullable quantity __attribute__((swift_name("quantity"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + + +/** + * A giftcard received from a paypal payment + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PayPalPaymentGiftCard.Companion"))) +@interface KASCPayPalPaymentGiftCardCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A giftcard received from a paypal payment + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPayPalPaymentGiftCardCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A giftcard received from a paypal payment + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A paypal payment response + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PayPalPaymentModel"))) +@interface KASCPayPalPaymentModel : KASCModel +- (instancetype)initWithData:(KASCPayPalPayment * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCPayPalPaymentModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A paypal payment response + */ +- (KASCPayPalPaymentModel *)doCopyData:(KASCPayPalPayment * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * A paypal payment response + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A paypal payment response + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A paypal payment response + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A paypal payment response data */ +@property (readonly) KASCPayPalPayment * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * A paypal payment response + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PayPalPaymentModel.Companion"))) +@interface KASCPayPalPaymentModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A paypal payment response + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPayPalPaymentModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A paypal payment response + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * To perform a social media action and get rewarded after. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaActionPerformApi"))) +@interface KASCSocialMediaActionPerformApi : KASCApi + +/** + * To perform a social media action and get rewarded after. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * To perform a social media action and get rewarded after. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCSocialMediaActionPerformApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * To perform a social media action and get rewarded after. + */ +- (KASCCFlow *> *)performSocialMediaActionPerformSocialMediaActionRequest:(KASCPerformSocialMediaActionRequestModel *)performSocialMediaActionRequest businessId:(NSString *)businessId __attribute__((swift_name("performSocialMediaAction(performSocialMediaActionRequest:businessId:)"))); + +/** + * To perform a social media action and get rewarded after. + * + * This method is used by the Native artifact when dealing with object body params + */ +- (KASCCFlow *> *)performSocialMediaActionMethods:(NSDictionary *)methods businessId:(NSString *)businessId __attribute__((swift_name("performSocialMediaAction(methods:businessId:)"))); +@property (readonly) KASCCFlow *> *socialMediaActionPerformState __attribute__((swift_name("socialMediaActionPerformState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaActionPerformApi.Companion"))) +@interface KASCSocialMediaActionPerformApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSocialMediaActionPerformApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PerformActionResponseModel"))) +@interface KASCPerformActionResponseModel : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id status:(NSString * _Nullable)status __attribute__((swift_name("init(id:status:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCPerformActionResponseModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCPerformActionResponseModel *)doCopyId:(KASCInt * _Nullable)id status:(NSString * _Nullable)status __attribute__((swift_name("doCopy(id:status:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSString * _Nullable status __attribute__((swift_name("status"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PerformActionResponseModel.Companion"))) +@interface KASCPerformActionResponseModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPerformActionResponseModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PerformSocialMediaActionRequestModel"))) +@interface KASCPerformSocialMediaActionRequestModel : KASCModel +- (instancetype)initWithActionId:(int32_t)actionId branchId:(NSString *)branchId __attribute__((swift_name("init(actionId:branchId:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCPerformSocialMediaActionRequestModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCPerformSocialMediaActionRequestModel *)doCopyActionId:(int32_t)actionId branchId:(NSString *)branchId __attribute__((swift_name("doCopy(actionId:branchId:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) int32_t actionId __attribute__((swift_name("actionId"))); +@property (readonly) NSString *branchId __attribute__((swift_name("branchId"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PerformSocialMediaActionRequestModel.Companion"))) +@interface KASCPerformSocialMediaActionRequestModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPerformSocialMediaActionRequestModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PerformSocialMediaActionResponseModel"))) +@interface KASCPerformSocialMediaActionResponseModel : KASCModel +- (instancetype)initWithData:(KASCPerformActionResponseModel * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCPerformSocialMediaActionResponseModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCPerformSocialMediaActionResponseModel *)doCopyData:(KASCPerformActionResponseModel * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains social media action data */ +@property (readonly) KASCPerformActionResponseModel * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PerformSocialMediaActionResponseModel.Companion"))) +@interface KASCPerformSocialMediaActionResponseModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPerformSocialMediaActionResponseModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Redeem a set of rewards. This action costs points which will be deducted from the users' balance. Only Partner Rewards can be redeemed from the customer api. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemRewardsApi"))) +@interface KASCRedeemRewardsApi : KASCApi + +/** + * Redeem a set of rewards. This action costs points which will be deducted from the users' balance. Only Partner Rewards can be redeemed from the customer api. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Redeem a set of rewards. This action costs points which will be deducted from the users' balance. Only Partner Rewards can be redeemed from the customer api. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCRedeemRewardsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Redeem a set of rewards. This action costs points which will be deducted from the users' balance. Only Partner Rewards can be redeemed from the customer api. + */ +- (KASCCFlow *> *)redeemRewardRedeemRequest:(KASCRedeemRequest *)redeemRequest __attribute__((swift_name("redeemReward(redeemRequest:)"))); + +/** + * Redeem a set of rewards. This action costs points which will be deducted from the users' balance. Only Partner Rewards can be redeemed from the customer api. + * + * This method is used by the Native artifact when dealing with object body params + */ +- (KASCCFlow *> *)redeemRewardMethods:(NSDictionary *)methods __attribute__((swift_name("redeemReward(methods:)"))); +@property (readonly) KASCCFlow *> *redeemRewardsState __attribute__((swift_name("redeemRewardsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemRewardsApi.Companion"))) +@interface KASCRedeemRewardsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRedeemRewardsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language____________"))) +@interface KASCLanguage____________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage____________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage____________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language____________.Companion"))) +@interface KASCLanguage____________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage____________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemRequest"))) +@interface KASCRedeemRequest : KASCBase +- (instancetype)initWithBranchId:(NSString *)branchId catalogItems:(NSArray *)catalogItems intent:(NSString *)intent __attribute__((swift_name("init(branchId:catalogItems:intent:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCRedeemRequestCompanion *companion __attribute__((swift_name("companion"))); +- (KASCRedeemRequest *)doCopyBranchId:(NSString *)branchId catalogItems:(NSArray *)catalogItems intent:(NSString *)intent __attribute__((swift_name("doCopy(branchId:catalogItems:intent:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *branchId __attribute__((swift_name("branchId"))); + +/** A list of rewards to redeem. */ +@property (readonly) NSArray *catalogItems __attribute__((swift_name("catalogItems"))); +@property (readonly) NSString *intent __attribute__((swift_name("intent"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemRequest.Companion"))) +@interface KASCRedeemRequestCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRedeemRequestCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemResponseData"))) +@interface KASCRedeemResponseData : KASCBase +- (instancetype)initWithId:(int32_t)id amount:(KASCDouble * _Nullable)amount points:(KASCLong * _Nullable)points name:(NSString * _Nullable)name createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt customer:(KASCUserProfileModel___ * _Nullable)customer __attribute__((swift_name("init(id:amount:points:name:createdAt:updatedAt:customer:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCRedeemResponseDataCompanion *companion __attribute__((swift_name("companion"))); +- (KASCRedeemResponseData *)doCopyId:(int32_t)id amount:(KASCDouble * _Nullable)amount points:(KASCLong * _Nullable)points name:(NSString * _Nullable)name createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt customer:(KASCUserProfileModel___ * _Nullable)customer __attribute__((swift_name("doCopy(id:amount:points:name:createdAt:updatedAt:customer:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); +@property (readonly) KASCUserProfileModel___ * _Nullable customer __attribute__((swift_name("customer"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemResponseData.Companion"))) +@interface KASCRedeemResponseDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRedeemResponseDataCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemResponseModel"))) +@interface KASCRedeemResponseModel : KASCModel +- (instancetype)initWithData:(KASCRedeemResponseData *)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCRedeemResponseModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCRedeemResponseModel *)doCopyData:(KASCRedeemResponseData *)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCRedeemResponseData *data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemResponseModel.Companion"))) +@interface KASCRedeemResponseModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRedeemResponseModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedemptionModel"))) +@interface KASCRedemptionModel : KASCModel +- (instancetype)initWithId:(int32_t)id quantity:(int32_t)quantity __attribute__((swift_name("init(id:quantity:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCRedemptionModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCRedemptionModel *)doCopyId:(int32_t)id quantity:(int32_t)quantity __attribute__((swift_name("doCopy(id:quantity:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A unique ID identifying this reward. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The amount of times to redeem this reward */ +@property (readonly) int32_t quantity __attribute__((swift_name("quantity"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedemptionModel.Companion"))) +@interface KASCRedemptionModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRedemptionModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A referral program + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram____"))) +@interface KASCReferralProgram____ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("init(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCReferralProgram____Companion *companion __attribute__((swift_name("companion"))); + +/** + * A referral program + */ +- (KASCReferralProgram____ *)doCopyId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("doCopy(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))); + +/** + * A referral program + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A referral program + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A referral program + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The minimum purchawe amount required for a succesful referral. */ +@property (readonly) KASCDouble * _Nullable condMinAmount __attribute__((swift_name("condMinAmount"))); + +/** Denotes whether this referral program is currently active. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The number of days the new customer has to sign up in order for a referral to be sucessful. */ +@property (readonly) KASCLong * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); + +/** The unique id of this referral program. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Denotes whether this referral program has enabled share links. Referral share links are links that the customer can send to prospective referrals. A User can sign up to the business through this link in order to complete the referral. */ +@property (readonly) KASCBoolean * _Nullable linkReferralEnabled __attribute__((swift_name("linkReferralEnabled"))); + +/** The number of points the new customer will earn. */ +@property (readonly) KASCLong * _Nullable refereeEarns __attribute__((swift_name("refereeEarns"))); + +/** The number of points the new customer who made the referral will earn. */ +@property (readonly) KASCLong * _Nullable refererEarns __attribute__((swift_name("refererEarns"))); + +/** A link that can be shared to prospective referrals. */ +@property (readonly) NSString * _Nullable referralLink __attribute__((swift_name("referralLink"))); +@property (readonly) NSString * _Nullable ruleName __attribute__((swift_name("ruleName"))); +@end + + +/** + * A referral program + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram____.Companion"))) +@interface KASCReferralProgram____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A referral program + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCReferralProgram____Companion *shared __attribute__((swift_name("shared"))); + +/** + * A referral program + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel_____"))) +@interface KASCTierLevel_____ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevel_____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier level. + */ +- (KASCTierLevel_____ *)doCopyId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))); + +/** + * Represents a single tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The icon of this tier level. */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** The ID for this tier. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** translation for each tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); + +/** The name of this tier level. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount of points acquired that is required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachPoints __attribute__((swift_name("reachPoints"))); + +/** The amount of money spent required to reach this tier. */ +@property (readonly) KASCFloat * _Nullable reachSpend __attribute__((swift_name("reachSpend"))); + +/** The amount of visits made to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachVisits __attribute__((swift_name("reachVisits"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable tierPerks __attribute__((swift_name("tierPerks"))); +@end + + +/** + * Represents a single tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel_____.Companion"))) +@interface KASCTierLevel_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevel_____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation_____"))) +@interface KASCTierLevelTranslation_____ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage____________ * _Nullable)language __attribute__((swift_name("init(languageId:name:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevelTranslation_____Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierLevelTranslation_____ *)doCopyLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage____________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:name:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The description of this tier level as translated. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage____________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation_____.Companion"))) +@interface KASCTierLevelTranslation_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevelTranslation_____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier perk for a tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk_____"))) +@interface KASCTierPerk_____ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerk_____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (KASCTierPerk_____ *)doCopyId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Whether this tier perk is currently enabled or disabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The ID for this tier perk. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Whether the offer this tier perk is currently attached to is expired or not. */ +@property (readonly) KASCBoolean * _Nullable isExpired __attribute__((swift_name("isExpired"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); +@property (readonly) KASCLong * _Nullable offerId __attribute__((swift_name("offerId"))); +@property (readonly) KASCLong * _Nullable punchItemId __attribute__((swift_name("punchItemId"))); + +/** The ID for the tier level this tier perk is related to. */ +@property (readonly) KASCLong * _Nullable tierId __attribute__((swift_name("tierId"))); + +/** The title of this tier perk. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + + +/** + * Represents a single tier perk for a tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk_____.Companion"))) +@interface KASCTierPerk_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier perk for a tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerk_____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation_____"))) +@interface KASCTierPerkTranslation_____ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage____________ * _Nullable)language __attribute__((swift_name("init(languageId:title:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerkTranslation_____Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierPerkTranslation_____ *)doCopyLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage____________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage____________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation_____.Companion"))) +@interface KASCTierPerkTranslation_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerkTranslation_____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress_____"))) +@interface KASCTierProgress_____ : KASCBase +- (instancetype)initWithStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("init(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierProgress_____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (KASCTierProgress_____ *)doCopyStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("doCopy(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The end date for this tier session. The tier will be reset once this date is reached. */ +@property (readonly) NSString * _Nullable endDate __attribute__((swift_name("endDate"))); + +/** The amount of spend left in the user's current tier progress. Once they have acquired this many more amount of spend, they will be moved into the next tier. */ +@property (readonly) KASCFloat * _Nullable leftAmount __attribute__((swift_name("leftAmount"))); + +/** The amount of points left in the user's current tier progress. Once they have acquired this many more amount of points, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftPoints __attribute__((swift_name("leftPoints"))); + +/** The amount of visits left in the user's current tier progress. Once they have acquired this many more amount of visits, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftVisits __attribute__((swift_name("leftVisits"))); + +/** The name of the user's next tier level. */ +@property (readonly) NSString * _Nullable nextTierLevel __attribute__((swift_name("nextTierLevel"))); + +/** The start date for this tier session. */ +@property (readonly) NSString * _Nullable startDate __attribute__((swift_name("startDate"))); + +/** The name of the user's current tier level */ +@property (readonly) NSString * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** The name of the user's current tier level. Tiers are recalculated once per day, as such \"tier_level\" may not be completely up to date. */ +@property (readonly) NSString * _Nullable tierLevelLive __attribute__((swift_name("tierLevelLive"))); + +/** The users current tier progress in their \"tier_level\". This will be a number between 0 and 1. A tier progress of 0.5 means that the user has made 50% progress in their current tier. */ +@property (readonly) KASCFloat * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); + +/** Purchase amount between start_date and end_date. */ +@property (readonly) KASCFloat * _Nullable totalAmount __attribute__((swift_name("totalAmount"))); + +/** Purchase points between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalPoints __attribute__((swift_name("totalPoints"))); + +/** Purchase visits between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalVisits __attribute__((swift_name("totalVisits"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress_____.Companion"))) +@interface KASCTierProgress_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierProgress_____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile balance data. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance____"))) +@interface KASCUserBalance____ : KASCBase +- (instancetype)initWithPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("init(points:giftcard:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBalance____Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile balance data. + */ +- (KASCUserBalance____ *)doCopyPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("doCopy(points:giftcard:)"))); + +/** + * User Profile balance data. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile balance data. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile balance data. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount of store credit in the users' e-wallet. */ +@property (readonly) KASCDouble * _Nullable giftcard __attribute__((swift_name("giftcard"))); + +/** The number of points this user currently has. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + + +/** + * User Profile balance data. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance____.Companion"))) +@interface KASCUserBalance____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile balance data. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBalance____Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile balance data. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel______"))) +@interface KASCUserProfileDataModel______ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel______Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel______ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel______.Companion"))) +@interface KASCUserProfileDataModel______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel______Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Extra user profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude____"))) +@interface KASCUserProfileInclude____ : KASCBase +- (instancetype)initWithBalance:(KASCUserBalance____ * _Nullable)balance tierLevel:(KASCTierLevel_____ * _Nullable)tierLevel tierProgress:(KASCTierProgress_____ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("init(balance:tierLevel:tierProgress:referralPrograms:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserProfileInclude____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Extra user profile data + */ +- (KASCUserProfileInclude____ *)doCopyBalance:(KASCUserBalance____ * _Nullable)balance tierLevel:(KASCTierLevel_____ * _Nullable)tierLevel tierProgress:(KASCTierProgress_____ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("doCopy(balance:tierLevel:tierProgress:referralPrograms:)"))); + +/** + * Extra user profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Extra user profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Extra user profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** User Profile balance data. */ +@property (readonly) KASCUserBalance____ * _Nullable balance __attribute__((swift_name("balance"))); + +/** A list of referral programs the user has access to. */ +@property (readonly) NSArray * _Nullable referralPrograms __attribute__((swift_name("referralPrograms"))); + +/** User's tier status. */ +@property (readonly) KASCTierLevel_____ * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** User's tier progress and status. If a user's tier status is statically fixed, this will be null as they do not progress from tier to tier. */ +@property (readonly) KASCTierProgress_____ * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); +@end + + +/** + * Extra user profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude____.Companion"))) +@interface KASCUserProfileInclude____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Extra user profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileInclude____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Extra user profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel___"))) +@interface KASCUserProfileModel___ : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel______ * _Nullable)data included:(KASCUserProfileInclude____ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileModel___Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileModel___ *)doCopyData:(KASCUserProfileDataModel______ * _Nullable)data included:(KASCUserProfileInclude____ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user profile data */ +@property (readonly) KASCUserProfileDataModel______ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains user balance data */ +@property (readonly) KASCUserProfileInclude____ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel___.Companion"))) +@interface KASCUserProfileModel___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileModel___Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of products available to all users. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicProductsApi"))) +@interface KASCPublicProductsApi : KASCApi + +/** + * Get a list of products available to all users. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of products available to all users. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCPublicProductsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of products available to all users. + */ +- (KASCCFlow *> *)getPublicProducts __attribute__((swift_name("getPublicProducts()"))); +@property (readonly) KASCCFlow *> *publicProductsState __attribute__((swift_name("publicProductsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicProductsApi.Companion"))) +@interface KASCPublicProductsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicProductsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images___"))) +@interface KASCImages___ : KASCBase +- (instancetype)initWithPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(path:large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImages___Companion *companion __attribute__((swift_name("companion"))); +- (KASCImages___ *)doCopyPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(path:large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable path __attribute__((swift_name("path"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images___.Companion"))) +@interface KASCImages___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImages___Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_____________"))) +@interface KASCLanguage_____________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_____________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_____________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_____________.Companion"))) +@interface KASCLanguage_____________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_____________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages___"))) +@interface KASCLanguages___ : KASCBase +- (instancetype)initWithLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage_____________ * _Nullable)language __attribute__((swift_name("init(languageId:title:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguages___Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguages___ *)doCopyLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage_____________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCLanguage_____________ * _Nullable language __attribute__((swift_name("language"))); +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages___.Companion"))) +@interface KASCLanguages___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguages___Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product___"))) +@interface KASCProduct___ : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("init(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCProduct___Companion *companion __attribute__((swift_name("companion"))); +- (KASCProduct___ *)doCopyId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("doCopy(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCFloat * _Nullable actualPrice __attribute__((swift_name("actualPrice"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) NSArray * _Nullable productLanguages __attribute__((swift_name("productLanguages"))); +@property (readonly) NSString * _Nullable productSku __attribute__((swift_name("productSku"))); +@property (readonly) KASCFloat * _Nullable realPrice __attribute__((swift_name("realPrice"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product___.Companion"))) +@interface KASCProduct___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCProduct___Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A list of products available to all users. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicProductsModel"))) +@interface KASCPublicProductsModel : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCPublicProductsModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A list of products available to all users. + */ +- (KASCPublicProductsModel *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * A list of products available to all users. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A list of products available to all users. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A list of products available to all users. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of products available to all users. */ +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * A list of products available to all users. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicProductsModel.Companion"))) +@interface KASCPublicProductsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A list of products available to all users. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicProductsModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A list of products available to all users. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of rewards available to this user. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserRewardsApi"))) +@interface KASCUserRewardsApi : KASCApi + +/** + * Get a list of rewards available to this user. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of rewards available to this user. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserRewardsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of rewards available to this user. + */ +- (KASCCFlow *> *)getUserRewards __attribute__((swift_name("getUserRewards()"))); +@property (readonly) KASCCFlow *> *userRewardsState __attribute__((swift_name("userRewardsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserRewardsApi.Companion"))) +@interface KASCUserRewardsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserRewardsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image___"))) +@interface KASCImage___ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage___Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage___ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image___.Companion"))) +@interface KASCImage___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage___Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language______________"))) +@interface KASCLanguage______________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage______________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage______________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language______________.Companion"))) +@interface KASCLanguage______________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage______________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardModel_"))) +@interface KASCRewardModel_ : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished amount:(KASCFloat * _Nullable)amount realValue:(KASCFloat * _Nullable)realValue discountValue:(KASCFloat * _Nullable)discountValue partnerReward:(KASCBoolean * _Nullable)partnerReward redeemForGiftCard:(KASCBoolean * _Nullable)redeemForGiftCard type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link rewardLanguages:(NSArray * _Nullable)rewardLanguages __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:amount:realValue:discountValue:partnerReward:redeemForGiftCard:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:rewardLanguages:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCRewardModel_Companion *companion __attribute__((swift_name("companion"))); +- (KASCRewardModel_ *)doCopyId:(KASCInt * _Nullable)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished amount:(KASCFloat * _Nullable)amount realValue:(KASCFloat * _Nullable)realValue discountValue:(KASCFloat * _Nullable)discountValue partnerReward:(KASCBoolean * _Nullable)partnerReward redeemForGiftCard:(KASCBoolean * _Nullable)redeemForGiftCard type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link rewardLanguages:(NSArray * _Nullable)rewardLanguages __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:amount:realValue:discountValue:partnerReward:redeemForGiftCard:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:rewardLanguages:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCFloat * _Nullable amount __attribute__((swift_name("amount"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCFloat * _Nullable discountValue __attribute__((swift_name("discountValue"))); +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); + +/** A unique ID identifying this reward */ +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCBoolean * _Nullable partnerReward __attribute__((swift_name("partnerReward"))); +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); +@property (readonly) KASCFloat * _Nullable realValue __attribute__((swift_name("realValue"))); +@property (readonly) KASCBoolean * _Nullable redeemForGiftCard __attribute__((swift_name("redeemForGiftCard"))); +@property (readonly) NSArray * _Nullable rewardLanguages __attribute__((swift_name("rewardLanguages"))); +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardModel_.Companion"))) +@interface KASCRewardModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRewardModel_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardTranslation__"))) +@interface KASCRewardTranslation__ : KASCBase +- (instancetype)initWithId:(KASCInt * _Nullable)id languageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link language:(KASCLanguage______________ * _Nullable)language __attribute__((swift_name("init(id:languageId:title:description:termsConditions:link:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCRewardTranslation__Companion *companion __attribute__((swift_name("companion"))); +- (KASCRewardTranslation__ *)doCopyId:(KASCInt * _Nullable)id languageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link language:(KASCLanguage______________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:title:description:termsConditions:link:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCLanguage______________ * _Nullable language __attribute__((swift_name("language"))); +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardTranslation__.Companion"))) +@interface KASCRewardTranslation__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRewardTranslation__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserRewardsData_"))) +@interface KASCUserRewardsData_ : KASCBase +- (instancetype)initWithCatalogItems:(NSArray * _Nullable)catalogItems __attribute__((swift_name("init(catalogItems:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserRewardsData_Companion *companion __attribute__((swift_name("companion"))); +- (KASCUserRewardsData_ *)doCopyCatalogItems:(NSArray * _Nullable)catalogItems __attribute__((swift_name("doCopy(catalogItems:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains a list of all rewards available to this user */ +@property (readonly) NSArray * _Nullable catalogItems __attribute__((swift_name("catalogItems"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserRewardsData_.Companion"))) +@interface KASCUserRewardsData_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserRewardsData_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserRewardsModel"))) +@interface KASCUserRewardsModel : KASCModel +- (instancetype)initWithData:(KASCUserRewardsData_ * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserRewardsModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserRewardsModel *)doCopyData:(KASCUserRewardsData_ * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains a list of all rewards available to this user */ +@property (readonly) KASCUserRewardsData_ * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserRewardsModel.Companion"))) +@interface KASCUserRewardsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserRewardsModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Acquires business banners. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BannersApi"))) +@interface KASCBannersApi : KASCApi + +/** + * Acquires business banners. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Acquires business banners. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCBannersApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Acquires business banners. + */ +- (KASCCFlow *> *)getBanners __attribute__((swift_name("getBanners()"))); +@property (readonly) KASCCFlow *> *bannersState __attribute__((swift_name("bannersState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BannersApi.Companion"))) +@interface KASCBannersApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBannersApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * A business banner. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Banner"))) +@interface KASCBanner : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id type:(KASCInt * _Nullable)type imagePath:(NSString * _Nullable)imagePath link:(NSString * _Nullable)link createdAt:(NSString * _Nullable)createdAt publishedAt:(NSString * _Nullable)publishedAt expiresAt:(NSString * _Nullable)expiresAt language:(KASCLanguage_______________ * _Nullable)language __attribute__((swift_name("init(id:type:imagePath:link:createdAt:publishedAt:expiresAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBannerCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A business banner. + */ +- (KASCBanner *)doCopyId:(KASCLong * _Nullable)id type:(KASCInt * _Nullable)type imagePath:(NSString * _Nullable)imagePath link:(NSString * _Nullable)link createdAt:(NSString * _Nullable)createdAt publishedAt:(NSString * _Nullable)publishedAt expiresAt:(NSString * _Nullable)expiresAt language:(KASCLanguage_______________ * _Nullable)language __attribute__((swift_name("doCopy(id:type:imagePath:link:createdAt:publishedAt:expiresAt:language:)"))); + +/** + * A business banner. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A business banner. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A business banner. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); + +/** Unique banner id. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable imagePath __attribute__((swift_name("imagePath"))); +@property (readonly) KASCLanguage_______________ * _Nullable language __attribute__((swift_name("language"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable publishedAt __attribute__((swift_name("publishedAt"))); + +/** The banner type. */ +@property (readonly) KASCInt * _Nullable type __attribute__((swift_name("type"))); +@end + + +/** + * A business banner. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Banner.Companion"))) +@interface KASCBannerCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A business banner. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBannerCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A business banner. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business banners. Used to display promotional material. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BannersModel"))) +@interface KASCBannersModel : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCBannersModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Business banners. Used to display promotional material. + */ +- (KASCBannersModel *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * Business banners. Used to display promotional material. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business banners. Used to display promotional material. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business banners. Used to display promotional material. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * Business banners. Used to display promotional material. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BannersModel.Companion"))) +@interface KASCBannersModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business banners. Used to display promotional material. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBannersModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Business banners. Used to display promotional material. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_______________"))) +@interface KASCLanguage_______________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_______________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_______________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_______________.Companion"))) +@interface KASCLanguage_______________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_______________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Transfer points or e-wallet balance to another users account. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BalanceTransferApi"))) +@interface KASCBalanceTransferApi : KASCApi + +/** + * Transfer points or e-wallet balance to another users account. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Transfer points or e-wallet balance to another users account. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCBalanceTransferApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Transfer points or e-wallet balance to another users account. + */ +- (KASCCFlow *> *)transferTransferRequest:(KASCTransferRequestModel *)transferRequest __attribute__((swift_name("transfer(transferRequest:)"))); + +/** + * Transfer points or e-wallet balance to another users account. + * + * This method is used by the Native artifact when dealing with object body params + */ +- (KASCCFlow *> *)transferMethods:(NSDictionary *)methods __attribute__((swift_name("transfer(methods:)"))); +@property (readonly) KASCCFlow *> *balanceTransferState __attribute__((swift_name("balanceTransferState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BalanceTransferApi.Companion"))) +@interface KASCBalanceTransferApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBalanceTransferApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferDataModel"))) +@interface KASCTransferDataModel : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id amount:(KASCDouble * _Nullable)amount name:(NSString * _Nullable)name createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt customer:(KASCUserProfileDataModel_______ * _Nullable)customer __attribute__((swift_name("init(id:amount:name:createdAt:updatedAt:customer:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCTransferDataModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCTransferDataModel *)doCopyId:(KASCInt * _Nullable)id amount:(KASCDouble * _Nullable)amount name:(NSString * _Nullable)name createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt customer:(KASCUserProfileDataModel_______ * _Nullable)customer __attribute__((swift_name("doCopy(id:amount:name:createdAt:updatedAt:customer:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); +@property (readonly) KASCUserProfileDataModel_______ * _Nullable customer __attribute__((swift_name("customer"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferDataModel.Companion"))) +@interface KASCTransferDataModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferDataModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferRequestFrom"))) +@interface KASCTransferRequestFrom : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name __attribute__((swift_name("init(name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransferRequestFromCompanion *companion __attribute__((swift_name("companion"))); +- (KASCTransferRequestFrom *)doCopyName:(NSString * _Nullable)name __attribute__((swift_name("doCopy(name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferRequestFrom.Companion"))) +@interface KASCTransferRequestFromCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferRequestFromCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferRequestModel"))) +@interface KASCTransferRequestModel : KASCModel +- (instancetype)initWithIntent:(NSString *)intent businessId:(NSString *)businessId language:(NSString *)language from:(KASCTransferRequestFrom *)from to:(KASCTransferRequestTo *)to points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount giftcardId:(KASCInt * _Nullable)giftcardId __attribute__((swift_name("init(intent:businessId:language:from:to:points:amount:giftcardId:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCTransferRequestModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCTransferRequestModel *)doCopyIntent:(NSString *)intent businessId:(NSString *)businessId language:(NSString *)language from:(KASCTransferRequestFrom *)from to:(KASCTransferRequestTo *)to points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount giftcardId:(KASCInt * _Nullable)giftcardId __attribute__((swift_name("doCopy(intent:businessId:language:from:to:points:amount:giftcardId:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); +@property (readonly) NSString *businessId __attribute__((swift_name("businessId"))); +@property (readonly) KASCTransferRequestFrom *from __attribute__((swift_name("from"))); +@property (readonly) KASCInt * _Nullable giftcardId __attribute__((swift_name("giftcardId"))); + +/** The transfer intent for this transfer. This can be transfer_amount or transfer_points */ +@property (readonly) NSString *intent __attribute__((swift_name("intent"))); + +/** The two character language code of the language that this transfer should be sent in. */ +@property (readonly) NSString *language __attribute__((swift_name("language"))); +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@property (readonly) KASCTransferRequestTo *to __attribute__((swift_name("to"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferRequestModel.Companion"))) +@interface KASCTransferRequestModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferRequestModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * The recipient data for this transfer. Either a phone number or an email address is required. If a phone number is used, the two character ISO country code must be supplied as well. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferRequestTo"))) +@interface KASCTransferRequestTo : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name phone:(NSString * _Nullable)phone countryCode:(NSString * _Nullable)countryCode email:(NSString * _Nullable)email __attribute__((swift_name("init(name:phone:countryCode:email:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransferRequestToCompanion *companion __attribute__((swift_name("companion"))); + +/** + * The recipient data for this transfer. Either a phone number or an email address is required. If a phone number is used, the two character ISO country code must be supplied as well. + */ +- (KASCTransferRequestTo *)doCopyName:(NSString * _Nullable)name phone:(NSString * _Nullable)phone countryCode:(NSString * _Nullable)countryCode email:(NSString * _Nullable)email __attribute__((swift_name("doCopy(name:phone:countryCode:email:)"))); + +/** + * The recipient data for this transfer. Either a phone number or an email address is required. If a phone number is used, the two character ISO country code must be supplied as well. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * The recipient data for this transfer. Either a phone number or an email address is required. If a phone number is used, the two character ISO country code must be supplied as well. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * The recipient data for this transfer. Either a phone number or an email address is required. If a phone number is used, the two character ISO country code must be supplied as well. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); +@end + + +/** + * The recipient data for this transfer. Either a phone number or an email address is required. If a phone number is used, the two character ISO country code must be supplied as well. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferRequestTo.Companion"))) +@interface KASCTransferRequestToCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * The recipient data for this transfer. Either a phone number or an email address is required. If a phone number is used, the two character ISO country code must be supplied as well. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferRequestToCompanion *shared __attribute__((swift_name("shared"))); + +/** + * The recipient data for this transfer. Either a phone number or an email address is required. If a phone number is used, the two character ISO country code must be supplied as well. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferResponseModel"))) +@interface KASCTransferResponseModel : KASCModel +- (instancetype)initWithData:(KASCTransferDataModel * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCTransferResponseModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCTransferResponseModel *)doCopyData:(KASCTransferDataModel * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user profile data */ +@property (readonly) KASCTransferDataModel * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferResponseModel.Companion"))) +@interface KASCTransferResponseModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferResponseModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_______"))) +@interface KASCUserProfileDataModel_______ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel_______Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel_______ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_______.Companion"))) +@interface KASCUserProfileDataModel_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel_______Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of gift cards available for purchase [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardsApi"))) +@interface KASCGiftCardsApi : KASCApi + +/** + * Get a list of gift cards available for purchase [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of gift cards available for purchase [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCGiftCardsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of gift cards available for purchase + */ +- (KASCCFlow *> *)getGiftCards __attribute__((swift_name("getGiftCards()"))); +@property (readonly) KASCCFlow *> *giftCardsState __attribute__((swift_name("giftCardsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardsApi.Companion"))) +@interface KASCGiftCardsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardAction"))) +@interface KASCGiftCardAction : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCGiftCardActionCompanion *companion __attribute__((swift_name("companion"))); +- (KASCGiftCardAction *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardAction.Companion"))) +@interface KASCGiftCardActionCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardActionCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardModel"))) +@interface KASCGiftCardModel : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCGiftCardModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCGiftCardModel *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this gift card. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The gift card description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this gift card */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this gift ard. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this gift card. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this gift card ever expires or not. If false, this gift card is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this gift card into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this gift card */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this gift card */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this gift card. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The gift card title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This is a gift card. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardModel.Companion"))) +@interface KASCGiftCardModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this gift card. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardTranslation"))) +@interface KASCGiftCardTranslation : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink language:(KASCLanguage________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCGiftCardTranslationCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this gift card. + */ +- (KASCGiftCardTranslation *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink language:(KASCLanguage________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:language:)"))); + +/** + * A language translation of this gift card. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this gift card. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this gift card. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated gift card description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this gift card. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated gift card terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated gift card title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this gift card. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardTranslation.Companion"))) +@interface KASCGiftCardTranslationCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this gift card. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardTranslationCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this gift card. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardsModel"))) +@interface KASCGiftCardsModel : KASCModel +- (instancetype)initWithData:(NSArray *)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCGiftCardsModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCGiftCardsModel *)doCopyData:(NSArray *)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of all gift cards available to this user */ +@property (readonly) NSArray *data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardsModel.Companion"))) +@interface KASCGiftCardsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardsModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image____"))) +@interface KASCImage____ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage____Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage____ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image____.Companion"))) +@interface KASCImage____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language________________"))) +@interface KASCLanguage________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language________________.Companion"))) +@interface KASCLanguage________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of businesses associated with this user account and application [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessesApi"))) +@interface KASCBusinessesApi : KASCApi + +/** + * Get a list of businesses associated with this user account and application [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of businesses associated with this user account and application [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCBusinessesApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of businesses associated with this user account and application + */ +- (KASCCFlow *> *)getBusinesses __attribute__((swift_name("getBusinesses()"))); +@property (readonly) KASCCFlow *> *businessesState __attribute__((swift_name("businessesState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessesApi.Companion"))) +@interface KASCBusinessesApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessesApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory__"))) +@interface KASCBusinessCategory__ : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("init(name:icon:code:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessCategory__Companion *companion __attribute__((swift_name("companion"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (KASCBusinessCategory__ *)doCopyName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("doCopy(name:icon:code:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique ategory code for this category */ +@property (readonly) NSString * _Nullable code __attribute__((swift_name("code"))); + +/** Url to this category's icon */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** Name of this category */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory__.Companion"))) +@interface KASCBusinessCategory__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessCategory__Companion *shared __attribute__((swift_name("shared"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData__"))) +@interface KASCBusinessData__ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage_____ * _Nullable)logo logoTransparentBackground:(KASCImage_____ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage_____ * _Nullable)coverPhoto category:(KASCBusinessCategory__ * _Nullable)category __attribute__((swift_name("init(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessData__Companion *companion __attribute__((swift_name("companion"))); + +/** + * Business profile data + */ +- (KASCBusinessData__ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage_____ * _Nullable)logo logoTransparentBackground:(KASCImage_____ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage_____ * _Nullable)coverPhoto category:(KASCBusinessCategory__ * _Nullable)category __attribute__((swift_name("doCopy(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))); + +/** + * Business profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** General about text for the business */ +@property (readonly) NSString * _Nullable about __attribute__((swift_name("about"))); +@property (readonly) KASCBusinessCategory__ * _Nullable category __attribute__((swift_name("category"))); + +/** Whether this is a conglomerate business. Conglomerate businesses are umbrellas for multiple business' in Kangaroo */ +@property (readonly) NSString * _Nullable conglomerate __attribute__((swift_name("conglomerate"))); +@property (readonly) KASCImage_____ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique business ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage_____ * _Nullable logo __attribute__((swift_name("logo"))); +@property (readonly) KASCImage_____ * _Nullable logoTransparentBackground __attribute__((swift_name("logoTransparentBackground"))); + +/** The manner in which this business rewards its customers. This can be by purchase amount of by visit to the store */ +@property (readonly) NSString * _Nullable loyaltyType __attribute__((swift_name("loyaltyType"))); + +/** The name of this business */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** Whether this is a white label business. White label business' don't appear in the Kangaroo Mobile Customer app, as they usually have their own app. */ +@property (readonly) NSString * _Nullable whiteLabel __attribute__((swift_name("whiteLabel"))); +@end + + +/** + * Business profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData__.Companion"))) +@interface KASCBusinessData__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessData__Companion *shared __attribute__((swift_name("shared"))); + +/** + * Business profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A list of businesses associated with this user and this app. Usually there will only be one business. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Businesses"))) +@interface KASCBusinesses : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCBusinessesCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A list of businesses associated with this user and this app. Usually there will only be one business. + */ +- (KASCBusinesses *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * A list of businesses associated with this user and this app. Usually there will only be one business. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A list of businesses associated with this user and this app. Usually there will only be one business. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A list of businesses associated with this user and this app. Usually there will only be one business. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of businesses for this user and this app. */ +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * A list of businesses associated with this user and this app. Usually there will only be one business. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Businesses.Companion"))) +@interface KASCBusinessesCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A list of businesses associated with this user and this app. Usually there will only be one business. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessesCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A list of businesses associated with this user and this app. Usually there will only be one business. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_____"))) +@interface KASCImage_____ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage_____Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage_____ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_____.Companion"))) +@interface KASCImage_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage_____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of available coupons for this user. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserCouponsApi"))) +@interface KASCUserCouponsApi : KASCApi + +/** + * Get a list of available coupons for this user. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of available coupons for this user. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserCouponsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of available coupons for this user. + */ +- (KASCCFlow *> *)getUserCoupons __attribute__((swift_name("getUserCoupons()"))); +@property (readonly) KASCCFlow *> *userCouponsState __attribute__((swift_name("userCouponsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserCouponsApi.Companion"))) +@interface KASCUserCouponsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserCouponsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CouponModel"))) +@interface KASCCouponModel : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description termsConditions:(NSString * _Nullable)termsConditions qrcode:(NSString * _Nullable)qrcode couponLocked:(KASCBoolean * _Nullable)couponLocked couponRedeemed:(KASCBoolean * _Nullable)couponRedeemed couponType:(NSString * _Nullable)couponType expiresAt:(NSString * _Nullable)expiresAt offer:(KASCOfferModel_ * _Nullable)offer __attribute__((swift_name("init(id:title:description:termsConditions:qrcode:couponLocked:couponRedeemed:couponType:expiresAt:offer:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCCouponModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCCouponModel *)doCopyId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description termsConditions:(NSString * _Nullable)termsConditions qrcode:(NSString * _Nullable)qrcode couponLocked:(KASCBoolean * _Nullable)couponLocked couponRedeemed:(KASCBoolean * _Nullable)couponRedeemed couponType:(NSString * _Nullable)couponType expiresAt:(NSString * _Nullable)expiresAt offer:(KASCOfferModel_ * _Nullable)offer __attribute__((swift_name("doCopy(id:title:description:termsConditions:qrcode:couponLocked:couponRedeemed:couponType:expiresAt:offer:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCBoolean * _Nullable couponLocked __attribute__((swift_name("couponLocked"))); +@property (readonly) KASCBoolean * _Nullable couponRedeemed __attribute__((swift_name("couponRedeemed"))); +@property (readonly) NSString * _Nullable couponType __attribute__((swift_name("couponType"))); + +/** The coupon description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); + +/** A unique ID identifying this coupon */ +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCOfferModel_ * _Nullable offer __attribute__((swift_name("offer"))); +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** The terms and conditions attached to this coupon. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The coupon title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CouponModel.Companion"))) +@interface KASCCouponModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCouponModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image______"))) +@interface KASCImage______ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage______Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage______ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image______.Companion"))) +@interface KASCImage______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_________________"))) +@interface KASCLanguage_________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_________________.Companion"))) +@interface KASCLanguage_________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction_"))) +@interface KASCOfferAction_ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferAction_Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferAction_ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction_.Companion"))) +@interface KASCOfferAction_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferAction_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel_"))) +@interface KASCOfferModel_ : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCOfferModel_Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferModel_ *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this offer. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** Whether this offer must be claimed on a mobile app before being used in store. */ +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The offer description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this offer. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isCouponRedeemed __attribute__((swift_name("isCouponRedeemed"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this offer. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** The maximum purchase amount for this offer to be applied. */ +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); + +/** The minimum purchase amount for this offer to be applied */ +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); + +/** The multiplication factor of this offer. This only applies to Point Multiplier offers. */ +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this offer ever expires or not. If false, this offer is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this offer into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); + +/** The amount of points required for this offer to be applied. Only used for Convertible Coupons */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this offer */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this offer. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The offer title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This can be a free product, dollar based discount, percentage based discount, point multiplier, bonus points, and free shipping. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel_.Companion"))) +@interface KASCOfferModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferModel_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this offer. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation_"))) +@interface KASCOfferTranslation_ : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage_________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferTranslation_Companion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this offer. + */ +- (KASCOfferTranslation_ *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage_________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))); + +/** + * A language translation of this offer. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this offer. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this offer. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** where is this coupon available at. */ +@property (readonly) NSString * _Nullable couponAvailableAt __attribute__((swift_name("couponAvailableAt"))); + +/** The translated coupon description. */ +@property (readonly) NSString * _Nullable couponDescription __attribute__((swift_name("couponDescription"))); + +/** The language appropriate link of this coupon. */ +@property (readonly) NSString * _Nullable couponLink __attribute__((swift_name("couponLink"))); + +/** The translated coupon terms and conditions. */ +@property (readonly) NSString * _Nullable couponTermsConditions __attribute__((swift_name("couponTermsConditions"))); + +/** The translated coupon title. */ +@property (readonly) NSString * _Nullable couponTitle __attribute__((swift_name("couponTitle"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated offer description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this offer. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated offer terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated offer title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this offer. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation_.Companion"))) +@interface KASCOfferTranslation_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this offer. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferTranslation_Companion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this offer. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserCouponsModel"))) +@interface KASCUserCouponsModel : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserCouponsModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserCouponsModel *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains a list of all coupons available to this user */ +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserCouponsModel.Companion"))) +@interface KASCUserCouponsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserCouponsModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of social media links for this business [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessSocialMediaLinksApi"))) +@interface KASCUserBusinessSocialMediaLinksApi : KASCApi + +/** + * Get a list of social media links for this business [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of social media links for this business [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserBusinessSocialMediaLinksApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of social media links for this business + */ +- (KASCCFlow *> *)getUserBusinessSocialMediaLinksBusinessId:(NSString *)businessId __attribute__((swift_name("getUserBusinessSocialMediaLinks(businessId:)"))); +@property (readonly) KASCCFlow *> *userBusinessSocialMediaLinksState __attribute__((swift_name("userBusinessSocialMediaLinksState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessSocialMediaLinksApi.Companion"))) +@interface KASCUserBusinessSocialMediaLinksApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessSocialMediaLinksApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessActionModel"))) +@interface KASCBusinessActionModel : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id points:(KASCLong * _Nullable)points actionId:(KASCInt * _Nullable)actionId __attribute__((swift_name("init(id:points:actionId:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCBusinessActionModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCBusinessActionModel *)doCopyId:(KASCInt * _Nullable)id points:(KASCLong * _Nullable)points actionId:(KASCInt * _Nullable)actionId __attribute__((swift_name("doCopy(id:points:actionId:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCInt * _Nullable actionId __attribute__((swift_name("actionId"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessActionModel.Companion"))) +@interface KASCBusinessActionModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessActionModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaLinksIncluded"))) +@interface KASCSocialMediaLinksIncluded : KASCBase +- (instancetype)initWithSocialMedia:(NSArray * _Nullable)socialMedia __attribute__((swift_name("init(socialMedia:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCSocialMediaLinksIncludedCompanion *companion __attribute__((swift_name("companion"))); +- (KASCSocialMediaLinksIncluded *)doCopySocialMedia:(NSArray * _Nullable)socialMedia __attribute__((swift_name("doCopy(socialMedia:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable socialMedia __attribute__((swift_name("socialMedia"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaLinksIncluded.Companion"))) +@interface KASCSocialMediaLinksIncludedCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSocialMediaLinksIncludedCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Social media links for this business + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaLinksModel"))) +@interface KASCSocialMediaLinksModel : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel________ * _Nullable)data included:(KASCSocialMediaLinksIncluded * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCSocialMediaLinksModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Social media links for this business + */ +- (KASCSocialMediaLinksModel *)doCopyData:(KASCUserProfileDataModel________ * _Nullable)data included:(KASCSocialMediaLinksIncluded * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * Social media links for this business + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Social media links for this business + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Social media links for this business + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user data */ +@property (readonly) KASCUserProfileDataModel________ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains social media links */ +@property (readonly) KASCSocialMediaLinksIncluded * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * Social media links for this business + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaLinksModel.Companion"))) +@interface KASCSocialMediaLinksModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Social media links for this business + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSocialMediaLinksModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Social media links for this business + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaModel"))) +@interface KASCSocialMediaModel : KASCModel +- (instancetype)initWithIcon:(NSString * _Nullable)icon url:(NSString * _Nullable)url businessAction:(KASCBusinessActionModel * _Nullable)businessAction userActionCompleted:(KASCBoolean * _Nullable)userActionCompleted __attribute__((swift_name("init(icon:url:businessAction:userActionCompleted:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCSocialMediaModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCSocialMediaModel *)doCopyIcon:(NSString * _Nullable)icon url:(NSString * _Nullable)url businessAction:(KASCBusinessActionModel * _Nullable)businessAction userActionCompleted:(KASCBoolean * _Nullable)userActionCompleted __attribute__((swift_name("doCopy(icon:url:businessAction:userActionCompleted:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCBusinessActionModel * _Nullable businessAction __attribute__((swift_name("businessAction"))); +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); +@property (readonly) NSString * _Nullable url __attribute__((swift_name("url"))); +@property (readonly) KASCBoolean * _Nullable userActionCompleted __attribute__((swift_name("userActionCompleted"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaModel.Companion"))) +@interface KASCSocialMediaModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSocialMediaModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel________"))) +@interface KASCUserProfileDataModel________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel________.Companion"))) +@interface KASCUserProfileDataModel________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Redeem a coupon. Coupons are created after an offer has been redeemed. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemCouponsApi"))) +@interface KASCRedeemCouponsApi : KASCApi + +/** + * Redeem a coupon. Coupons are created after an offer has been redeemed. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Redeem a coupon. Coupons are created after an offer has been redeemed. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCRedeemCouponsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Redeem a coupon. Coupons are created after an offer has been redeemed. + */ +- (KASCCFlow *> *)redeemCouponRedeemCouponRequest:(KASCRedeemCouponRequest *)redeemCouponRequest __attribute__((swift_name("redeemCoupon(redeemCouponRequest:)"))); + +/** + * Redeem a coupon. Coupons are created after an offer has been redeemed. + * + * This method is used by the Native artifact when dealing with object body params + */ +- (KASCCFlow *> *)redeemCouponMethods:(NSDictionary *)methods __attribute__((swift_name("redeemCoupon(methods:)"))); +@property (readonly) KASCCFlow *> *redeemCouponsState __attribute__((swift_name("redeemCouponsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemCouponsApi.Companion"))) +@interface KASCRedeemCouponsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRedeemCouponsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CouponRedemptionModel"))) +@interface KASCCouponRedemptionModel : KASCModel +- (instancetype)initWithId:(int64_t)id __attribute__((swift_name("init(id:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCCouponRedemptionModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCCouponRedemptionModel *)doCopyId:(int64_t)id __attribute__((swift_name("doCopy(id:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A unique ID identifying this coupon. */ +@property (readonly) int64_t id __attribute__((swift_name("id"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CouponRedemptionModel.Companion"))) +@interface KASCCouponRedemptionModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCouponRedemptionModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CouponRedemptionResponseData"))) +@interface KASCCouponRedemptionResponseData : KASCBase +- (instancetype)initWithId:(int32_t)id amount:(KASCDouble * _Nullable)amount points:(KASCLong * _Nullable)points name:(NSString * _Nullable)name transactionType:(KASCLong * _Nullable)transactionType createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt customer:(KASCUserProfileModel____ * _Nullable)customer __attribute__((swift_name("init(id:amount:points:name:transactionType:createdAt:updatedAt:customer:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCCouponRedemptionResponseDataCompanion *companion __attribute__((swift_name("companion"))); +- (KASCCouponRedemptionResponseData *)doCopyId:(int32_t)id amount:(KASCDouble * _Nullable)amount points:(KASCLong * _Nullable)points name:(NSString * _Nullable)name transactionType:(KASCLong * _Nullable)transactionType createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt customer:(KASCUserProfileModel____ * _Nullable)customer __attribute__((swift_name("doCopy(id:amount:points:name:transactionType:createdAt:updatedAt:customer:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); +@property (readonly) KASCUserProfileModel____ * _Nullable customer __attribute__((swift_name("customer"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@property (readonly) KASCLong * _Nullable transactionType __attribute__((swift_name("transactionType"))); +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CouponRedemptionResponseData.Companion"))) +@interface KASCCouponRedemptionResponseDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCouponRedemptionResponseDataCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CouponRedemptionResponseModel"))) +@interface KASCCouponRedemptionResponseModel : KASCModel +- (instancetype)initWithData:(KASCCouponRedemptionResponseData *)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCCouponRedemptionResponseModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCCouponRedemptionResponseModel *)doCopyData:(KASCCouponRedemptionResponseData *)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCCouponRedemptionResponseData *data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CouponRedemptionResponseModel.Companion"))) +@interface KASCCouponRedemptionResponseModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCouponRedemptionResponseModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language__________________"))) +@interface KASCLanguage__________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage__________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage__________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language__________________.Companion"))) +@interface KASCLanguage__________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage__________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferRedemptionModel"))) +@interface KASCOfferRedemptionModel : KASCModel +- (instancetype)initWithId:(int64_t)id __attribute__((swift_name("init(id:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCOfferRedemptionModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCOfferRedemptionModel *)doCopyId:(int64_t)id __attribute__((swift_name("doCopy(id:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A unique ID identifying this offer. */ +@property (readonly) int64_t id __attribute__((swift_name("id"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferRedemptionModel.Companion"))) +@interface KASCOfferRedemptionModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferRedemptionModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemCouponRequest"))) +@interface KASCRedeemCouponRequest : KASCBase +- (instancetype)initWithIntent:(NSString *)intent pinCode:(NSString *)pinCode coupon:(KASCCouponRedemptionModel *)coupon offer:(KASCOfferRedemptionModel *)offer int:(NSString * _Nullable)int_ __attribute__((swift_name("init(intent:pinCode:coupon:offer:int:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCRedeemCouponRequestCompanion *companion __attribute__((swift_name("companion"))); +- (KASCRedeemCouponRequest *)doCopyIntent:(NSString *)intent pinCode:(NSString *)pinCode coupon:(KASCCouponRedemptionModel *)coupon offer:(KASCOfferRedemptionModel *)offer int:(NSString * _Nullable)int_ __attribute__((swift_name("doCopy(intent:pinCode:coupon:offer:int:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The coupon being redeemed */ +@property (readonly) KASCCouponRedemptionModel *coupon __attribute__((swift_name("coupon"))); +@property (readonly, getter=int) NSString * _Nullable int_ __attribute__((swift_name("int_"))); +@property (readonly) NSString *intent __attribute__((swift_name("intent"))); + +/** The offer that created this coupon */ +@property (readonly) KASCOfferRedemptionModel *offer __attribute__((swift_name("offer"))); +@property (readonly) NSString *pinCode __attribute__((swift_name("pinCode"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemCouponRequest.Companion"))) +@interface KASCRedeemCouponRequestCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRedeemCouponRequestCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A referral program + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram_____"))) +@interface KASCReferralProgram_____ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("init(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCReferralProgram_____Companion *companion __attribute__((swift_name("companion"))); + +/** + * A referral program + */ +- (KASCReferralProgram_____ *)doCopyId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("doCopy(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))); + +/** + * A referral program + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A referral program + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A referral program + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The minimum purchawe amount required for a succesful referral. */ +@property (readonly) KASCDouble * _Nullable condMinAmount __attribute__((swift_name("condMinAmount"))); + +/** Denotes whether this referral program is currently active. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The number of days the new customer has to sign up in order for a referral to be sucessful. */ +@property (readonly) KASCLong * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); + +/** The unique id of this referral program. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Denotes whether this referral program has enabled share links. Referral share links are links that the customer can send to prospective referrals. A User can sign up to the business through this link in order to complete the referral. */ +@property (readonly) KASCBoolean * _Nullable linkReferralEnabled __attribute__((swift_name("linkReferralEnabled"))); + +/** The number of points the new customer will earn. */ +@property (readonly) KASCLong * _Nullable refereeEarns __attribute__((swift_name("refereeEarns"))); + +/** The number of points the new customer who made the referral will earn. */ +@property (readonly) KASCLong * _Nullable refererEarns __attribute__((swift_name("refererEarns"))); + +/** A link that can be shared to prospective referrals. */ +@property (readonly) NSString * _Nullable referralLink __attribute__((swift_name("referralLink"))); +@property (readonly) NSString * _Nullable ruleName __attribute__((swift_name("ruleName"))); +@end + + +/** + * A referral program + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram_____.Companion"))) +@interface KASCReferralProgram_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A referral program + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCReferralProgram_____Companion *shared __attribute__((swift_name("shared"))); + +/** + * A referral program + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel______"))) +@interface KASCTierLevel______ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevel______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier level. + */ +- (KASCTierLevel______ *)doCopyId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))); + +/** + * Represents a single tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The icon of this tier level. */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** The ID for this tier. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** translation for each tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); + +/** The name of this tier level. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount of points acquired that is required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachPoints __attribute__((swift_name("reachPoints"))); + +/** The amount of money spent required to reach this tier. */ +@property (readonly) KASCFloat * _Nullable reachSpend __attribute__((swift_name("reachSpend"))); + +/** The amount of visits made to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachVisits __attribute__((swift_name("reachVisits"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable tierPerks __attribute__((swift_name("tierPerks"))); +@end + + +/** + * Represents a single tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel______.Companion"))) +@interface KASCTierLevel______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevel______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation______"))) +@interface KASCTierLevelTranslation______ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage__________________ * _Nullable)language __attribute__((swift_name("init(languageId:name:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevelTranslation______Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierLevelTranslation______ *)doCopyLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage__________________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:name:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The description of this tier level as translated. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage__________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation______.Companion"))) +@interface KASCTierLevelTranslation______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevelTranslation______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier perk for a tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk______"))) +@interface KASCTierPerk______ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerk______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (KASCTierPerk______ *)doCopyId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Whether this tier perk is currently enabled or disabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The ID for this tier perk. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Whether the offer this tier perk is currently attached to is expired or not. */ +@property (readonly) KASCBoolean * _Nullable isExpired __attribute__((swift_name("isExpired"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); +@property (readonly) KASCLong * _Nullable offerId __attribute__((swift_name("offerId"))); +@property (readonly) KASCLong * _Nullable punchItemId __attribute__((swift_name("punchItemId"))); + +/** The ID for the tier level this tier perk is related to. */ +@property (readonly) KASCLong * _Nullable tierId __attribute__((swift_name("tierId"))); + +/** The title of this tier perk. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + + +/** + * Represents a single tier perk for a tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk______.Companion"))) +@interface KASCTierPerk______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier perk for a tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerk______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation______"))) +@interface KASCTierPerkTranslation______ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage__________________ * _Nullable)language __attribute__((swift_name("init(languageId:title:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerkTranslation______Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierPerkTranslation______ *)doCopyLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage__________________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage__________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation______.Companion"))) +@interface KASCTierPerkTranslation______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerkTranslation______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress______"))) +@interface KASCTierProgress______ : KASCBase +- (instancetype)initWithStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("init(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierProgress______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (KASCTierProgress______ *)doCopyStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("doCopy(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The end date for this tier session. The tier will be reset once this date is reached. */ +@property (readonly) NSString * _Nullable endDate __attribute__((swift_name("endDate"))); + +/** The amount of spend left in the user's current tier progress. Once they have acquired this many more amount of spend, they will be moved into the next tier. */ +@property (readonly) KASCFloat * _Nullable leftAmount __attribute__((swift_name("leftAmount"))); + +/** The amount of points left in the user's current tier progress. Once they have acquired this many more amount of points, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftPoints __attribute__((swift_name("leftPoints"))); + +/** The amount of visits left in the user's current tier progress. Once they have acquired this many more amount of visits, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftVisits __attribute__((swift_name("leftVisits"))); + +/** The name of the user's next tier level. */ +@property (readonly) NSString * _Nullable nextTierLevel __attribute__((swift_name("nextTierLevel"))); + +/** The start date for this tier session. */ +@property (readonly) NSString * _Nullable startDate __attribute__((swift_name("startDate"))); + +/** The name of the user's current tier level */ +@property (readonly) NSString * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** The name of the user's current tier level. Tiers are recalculated once per day, as such \"tier_level\" may not be completely up to date. */ +@property (readonly) NSString * _Nullable tierLevelLive __attribute__((swift_name("tierLevelLive"))); + +/** The users current tier progress in their \"tier_level\". This will be a number between 0 and 1. A tier progress of 0.5 means that the user has made 50% progress in their current tier. */ +@property (readonly) KASCFloat * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); + +/** Purchase amount between start_date and end_date. */ +@property (readonly) KASCFloat * _Nullable totalAmount __attribute__((swift_name("totalAmount"))); + +/** Purchase points between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalPoints __attribute__((swift_name("totalPoints"))); + +/** Purchase visits between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalVisits __attribute__((swift_name("totalVisits"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress______.Companion"))) +@interface KASCTierProgress______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierProgress______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile balance data. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance_____"))) +@interface KASCUserBalance_____ : KASCBase +- (instancetype)initWithPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("init(points:giftcard:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBalance_____Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile balance data. + */ +- (KASCUserBalance_____ *)doCopyPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("doCopy(points:giftcard:)"))); + +/** + * User Profile balance data. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile balance data. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile balance data. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount of store credit in the users' e-wallet. */ +@property (readonly) KASCDouble * _Nullable giftcard __attribute__((swift_name("giftcard"))); + +/** The number of points this user currently has. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + + +/** + * User Profile balance data. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance_____.Companion"))) +@interface KASCUserBalance_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile balance data. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBalance_____Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile balance data. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_________"))) +@interface KASCUserProfileDataModel_________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel_________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel_________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_________.Companion"))) +@interface KASCUserProfileDataModel_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel_________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Extra user profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude_____"))) +@interface KASCUserProfileInclude_____ : KASCBase +- (instancetype)initWithBalance:(KASCUserBalance_____ * _Nullable)balance tierLevel:(KASCTierLevel______ * _Nullable)tierLevel tierProgress:(KASCTierProgress______ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("init(balance:tierLevel:tierProgress:referralPrograms:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserProfileInclude_____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Extra user profile data + */ +- (KASCUserProfileInclude_____ *)doCopyBalance:(KASCUserBalance_____ * _Nullable)balance tierLevel:(KASCTierLevel______ * _Nullable)tierLevel tierProgress:(KASCTierProgress______ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("doCopy(balance:tierLevel:tierProgress:referralPrograms:)"))); + +/** + * Extra user profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Extra user profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Extra user profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** User Profile balance data. */ +@property (readonly) KASCUserBalance_____ * _Nullable balance __attribute__((swift_name("balance"))); + +/** A list of referral programs the user has access to. */ +@property (readonly) NSArray * _Nullable referralPrograms __attribute__((swift_name("referralPrograms"))); + +/** User's tier status. */ +@property (readonly) KASCTierLevel______ * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** User's tier progress and status. If a user's tier status is statically fixed, this will be null as they do not progress from tier to tier. */ +@property (readonly) KASCTierProgress______ * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); +@end + + +/** + * Extra user profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude_____.Companion"))) +@interface KASCUserProfileInclude_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Extra user profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileInclude_____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Extra user profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel____"))) +@interface KASCUserProfileModel____ : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel_________ * _Nullable)data included:(KASCUserProfileInclude_____ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileModel____Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileModel____ *)doCopyData:(KASCUserProfileDataModel_________ * _Nullable)data included:(KASCUserProfileInclude_____ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user profile data */ +@property (readonly) KASCUserProfileDataModel_________ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains user balance data */ +@property (readonly) KASCUserProfileInclude_____ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel____.Companion"))) +@interface KASCUserProfileModel____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileModel____Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Delete user account [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserDeleteApi"))) +@interface KASCUserDeleteApi : KASCApi + +/** + * Delete user account [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Delete user account [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserDeleteApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Delete user account + */ +- (KASCCFlow *> *)deleteUserAccount __attribute__((swift_name("deleteUserAccount()"))); +@property (readonly) KASCCFlow *> *userDeleteState __attribute__((swift_name("userDeleteState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserDeleteApi.Companion"))) +@interface KASCUserDeleteApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserDeleteApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Get a users notification settings. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GetNotificationPreferencesApi"))) +@interface KASCGetNotificationPreferencesApi : KASCApi + +/** + * Get a users notification settings. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a users notification settings. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCGetNotificationPreferencesApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a users notification settings. + */ +- (KASCCFlow *> *)getNotificationPreferences __attribute__((swift_name("getNotificationPreferences()"))); +@property (readonly) KASCCFlow *> *getNotificationPreferencesState __attribute__((swift_name("getNotificationPreferencesState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GetNotificationPreferencesApi.Companion"))) +@interface KASCGetNotificationPreferencesApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGetNotificationPreferencesApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * The business who these settings this affect. This is not required when updating notification settings. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationBusinessPayload_"))) +@interface KASCNotificationBusinessPayload_ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name __attribute__((swift_name("init(id:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCNotificationBusinessPayload_Companion *companion __attribute__((swift_name("companion"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (KASCNotificationBusinessPayload_ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:name:)"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationBusinessPayload_.Companion"))) +@interface KASCNotificationBusinessPayload_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCNotificationBusinessPayload_Companion *shared __attribute__((swift_name("shared"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsData_"))) +@interface KASCNotificationSettingsData_ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id business:(KASCNotificationBusinessPayload_ * _Nullable)business allowEmail:(KASCBoolean * _Nullable)allowEmail allowSms:(KASCBoolean * _Nullable)allowSms allowPush:(KASCBoolean * _Nullable)allowPush __attribute__((swift_name("init(id:business:allowEmail:allowSms:allowPush:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCNotificationSettingsData_Companion *companion __attribute__((swift_name("companion"))); +- (KASCNotificationSettingsData_ *)doCopyId:(NSString * _Nullable)id business:(KASCNotificationBusinessPayload_ * _Nullable)business allowEmail:(KASCBoolean * _Nullable)allowEmail allowSms:(KASCBoolean * _Nullable)allowSms allowPush:(KASCBoolean * _Nullable)allowPush __attribute__((swift_name("doCopy(id:business:allowEmail:allowSms:allowPush:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCBoolean * _Nullable allowEmail __attribute__((swift_name("allowEmail"))); +@property (readonly) KASCBoolean * _Nullable allowPush __attribute__((swift_name("allowPush"))); +@property (readonly) KASCBoolean * _Nullable allowSms __attribute__((swift_name("allowSms"))); +@property (readonly) KASCNotificationBusinessPayload_ * _Nullable business __attribute__((swift_name("business"))); + +/** The notification settings id. This is not required when updating notification settings. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsData_.Companion"))) +@interface KASCNotificationSettingsData_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCNotificationSettingsData_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsModel_"))) +@interface KASCNotificationSettingsModel_ : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCNotificationSettingsModel_Companion *companion __attribute__((swift_name("companion"))); +- (KASCNotificationSettingsModel_ *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsModel_.Companion"))) +@interface KASCNotificationSettingsModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCNotificationSettingsModel_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Unsubscribe from marketing material [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserUnsubscribeApi"))) +@interface KASCUserUnsubscribeApi : KASCApi + +/** + * Unsubscribe from marketing material [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Unsubscribe from marketing material [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserUnsubscribeApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Unsubscribe from marketing material + */ +- (KASCCFlow *> *)unsubscribeCampaignId:(NSString *)campaignId token:(NSString *)token __attribute__((swift_name("unsubscribe(campaignId:token:)"))); +@property (readonly) KASCCFlow *> *userUnsubscribeState __attribute__((swift_name("userUnsubscribeState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserUnsubscribeApi.Companion"))) +@interface KASCUserUnsubscribeApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserUnsubscribeApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Get user details for this user. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserDetailsApi"))) +@interface KASCUserDetailsApi : KASCApi + +/** + * Get user details for this user. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get user details for this user. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserDetailsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get user details for this user. + */ +- (KASCCFlow *> *)getUserDetails __attribute__((swift_name("getUserDetails()"))); +@property (readonly) KASCCFlow *> *userDetailsState __attribute__((swift_name("userDetailsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserDetailsApi.Companion"))) +@interface KASCUserDetailsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserDetailsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * User Details model class containing user details + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserDetailsModel"))) +@interface KASCUserDetailsModel : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel__________ * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserDetailsModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * User Details model class containing user details + */ +- (KASCUserDetailsModel *)doCopyData:(KASCUserProfileDataModel__________ * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * User Details model class containing user details + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Details model class containing user details + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Details model class containing user details + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user details */ +@property (readonly) KASCUserProfileDataModel__________ * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * User Details model class containing user details + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserDetailsModel.Companion"))) +@interface KASCUserDetailsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Details model class containing user details + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserDetailsModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * User Details model class containing user details + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel__________"))) +@interface KASCUserProfileDataModel__________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel__________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel__________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel__________.Companion"))) +@interface KASCUserProfileDataModel__________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel__________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get the branches of a business [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchesApi"))) +@interface KASCBranchesApi : KASCApi + +/** + * Get the branches of a business [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get the branches of a business [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCBranchesApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get the branches of a business + */ +- (KASCCFlow *> *)getBusinessBranchesBusinessId:(NSString *)businessId __attribute__((swift_name("getBusinessBranches(businessId:)"))); +@property (readonly) KASCCFlow *> *branchesState __attribute__((swift_name("branchesState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchesApi.Companion"))) +@interface KASCBranchesApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBranchesApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Branch"))) +@interface KASCBranch : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name webSite:(NSString * _Nullable)webSite phone:(KASCBranchPhone * _Nullable)phone logo:(KASCImage_______ * _Nullable)logo coverPhoto:(KASCImage_______ * _Nullable)coverPhoto address:(KASCBranchAddress * _Nullable)address __attribute__((swift_name("init(id:name:webSite:phone:logo:coverPhoto:address:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBranchCompanion *companion __attribute__((swift_name("companion"))); +- (KASCBranch *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name webSite:(NSString * _Nullable)webSite phone:(KASCBranchPhone * _Nullable)phone logo:(KASCImage_______ * _Nullable)logo coverPhoto:(KASCImage_______ * _Nullable)coverPhoto address:(KASCBranchAddress * _Nullable)address __attribute__((swift_name("doCopy(id:name:webSite:phone:logo:coverPhoto:address:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCBranchAddress * _Nullable address __attribute__((swift_name("address"))); +@property (readonly) KASCImage_______ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique ID for this branch */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage_______ * _Nullable logo __attribute__((swift_name("logo"))); + +/** The name of this branch */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@property (readonly) KASCBranchPhone * _Nullable phone __attribute__((swift_name("phone"))); + +/** The website for this branch */ +@property (readonly) NSString * _Nullable webSite __attribute__((swift_name("webSite"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Branch.Companion"))) +@interface KASCBranchCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBranchCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchAddress"))) +@interface KASCBranchAddress : KASCBase +- (instancetype)initWithFormatted:(NSString * _Nullable)formatted street:(NSString * _Nullable)street city:(NSString * _Nullable)city region:(NSString * _Nullable)region country:(NSString * _Nullable)country lat:(KASCFloat * _Nullable)lat long:(KASCFloat * _Nullable)long_ __attribute__((swift_name("init(formatted:street:city:region:country:lat:long:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBranchAddressCompanion *companion __attribute__((swift_name("companion"))); +- (KASCBranchAddress *)doCopyFormatted:(NSString * _Nullable)formatted street:(NSString * _Nullable)street city:(NSString * _Nullable)city region:(NSString * _Nullable)region country:(NSString * _Nullable)country lat:(KASCFloat * _Nullable)lat long:(KASCFloat * _Nullable)long_ __attribute__((swift_name("doCopy(formatted:street:city:region:country:lat:long:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable city __attribute__((swift_name("city"))); +@property (readonly) NSString * _Nullable country __attribute__((swift_name("country"))); +@property (readonly) NSString * _Nullable formatted __attribute__((swift_name("formatted"))); +@property (readonly) KASCFloat * _Nullable lat __attribute__((swift_name("lat"))); +@property (readonly, getter=long) KASCFloat * _Nullable long_ __attribute__((swift_name("long_"))); +@property (readonly) NSString * _Nullable region __attribute__((swift_name("region"))); +@property (readonly) NSString * _Nullable street __attribute__((swift_name("street"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchAddress.Companion"))) +@interface KASCBranchAddressCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBranchAddressCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchPhone"))) +@interface KASCBranchPhone : KASCBase +- (instancetype)initWithNumber:(NSString * _Nullable)number countryCode:(NSString * _Nullable)countryCode nationalFormat:(NSString * _Nullable)nationalFormat intlFormat:(NSString * _Nullable)intlFormat __attribute__((swift_name("init(number:countryCode:nationalFormat:intlFormat:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBranchPhoneCompanion *companion __attribute__((swift_name("companion"))); +- (KASCBranchPhone *)doCopyNumber:(NSString * _Nullable)number countryCode:(NSString * _Nullable)countryCode nationalFormat:(NSString * _Nullable)nationalFormat intlFormat:(NSString * _Nullable)intlFormat __attribute__((swift_name("doCopy(number:countryCode:nationalFormat:intlFormat:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); +@property (readonly) NSString * _Nullable intlFormat __attribute__((swift_name("intlFormat"))); +@property (readonly) NSString * _Nullable nationalFormat __attribute__((swift_name("nationalFormat"))); +@property (readonly) NSString * _Nullable number __attribute__((swift_name("number"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchPhone.Companion"))) +@interface KASCBranchPhoneCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBranchPhoneCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Business"))) +@interface KASCBusiness : KASCModel +- (instancetype)initWithData:(KASCBusinessData___ * _Nullable)data included:(KASCBusinessBranchesData * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCBusinessCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +- (KASCBusiness *)doCopyData:(KASCBusinessData___ * _Nullable)data included:(KASCBusinessBranchesData * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Details about a business */ +@property (readonly) KASCBusinessData___ * _Nullable data __attribute__((swift_name("data"))); + +/** Details about a business' branches */ +@property (readonly) KASCBusinessBranchesData * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Business.Companion"))) +@interface KASCBusinessCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessBranchesData"))) +@interface KASCBusinessBranchesData : KASCBase +- (instancetype)initWithBranches:(NSArray * _Nullable)branches __attribute__((swift_name("init(branches:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessBranchesDataCompanion *companion __attribute__((swift_name("companion"))); +- (KASCBusinessBranchesData *)doCopyBranches:(NSArray * _Nullable)branches __attribute__((swift_name("doCopy(branches:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable branches __attribute__((swift_name("branches"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessBranchesData.Companion"))) +@interface KASCBusinessBranchesDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessBranchesDataCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory___"))) +@interface KASCBusinessCategory___ : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("init(name:icon:code:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessCategory___Companion *companion __attribute__((swift_name("companion"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (KASCBusinessCategory___ *)doCopyName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("doCopy(name:icon:code:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique ategory code for this category */ +@property (readonly) NSString * _Nullable code __attribute__((swift_name("code"))); + +/** Url to this category's icon */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** Name of this category */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory___.Companion"))) +@interface KASCBusinessCategory___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessCategory___Companion *shared __attribute__((swift_name("shared"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData___"))) +@interface KASCBusinessData___ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage_______ * _Nullable)logo logoTransparentBackground:(KASCImage_______ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage_______ * _Nullable)coverPhoto category:(KASCBusinessCategory___ * _Nullable)category __attribute__((swift_name("init(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessData___Companion *companion __attribute__((swift_name("companion"))); + +/** + * Business profile data + */ +- (KASCBusinessData___ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage_______ * _Nullable)logo logoTransparentBackground:(KASCImage_______ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage_______ * _Nullable)coverPhoto category:(KASCBusinessCategory___ * _Nullable)category __attribute__((swift_name("doCopy(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))); + +/** + * Business profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** General about text for the business */ +@property (readonly) NSString * _Nullable about __attribute__((swift_name("about"))); +@property (readonly) KASCBusinessCategory___ * _Nullable category __attribute__((swift_name("category"))); + +/** Whether this is a conglomerate business. Conglomerate businesses are umbrellas for multiple business' in Kangaroo */ +@property (readonly) NSString * _Nullable conglomerate __attribute__((swift_name("conglomerate"))); +@property (readonly) KASCImage_______ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique business ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage_______ * _Nullable logo __attribute__((swift_name("logo"))); +@property (readonly) KASCImage_______ * _Nullable logoTransparentBackground __attribute__((swift_name("logoTransparentBackground"))); + +/** The manner in which this business rewards its customers. This can be by purchase amount of by visit to the store */ +@property (readonly) NSString * _Nullable loyaltyType __attribute__((swift_name("loyaltyType"))); + +/** The name of this business */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** Whether this is a white label business. White label business' don't appear in the Kangaroo Mobile Customer app, as they usually have their own app. */ +@property (readonly) NSString * _Nullable whiteLabel __attribute__((swift_name("whiteLabel"))); +@end + + +/** + * Business profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData___.Companion"))) +@interface KASCBusinessData___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessData___Companion *shared __attribute__((swift_name("shared"))); + +/** + * Business profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_______"))) +@interface KASCImage_______ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage_______Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage_______ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_______.Companion"))) +@interface KASCImage_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage_______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Scan a purchase receipt with a business [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserScanReceiptApi"))) +@interface KASCUserScanReceiptApi : KASCApi + +/** + * Scan a purchase receipt with a business [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Scan a purchase receipt with a business [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserScanReceiptApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Scan a purchase receipt with a business + */ +- (KASCCFlow *> *)scanReceiptScanReceiptRequest:(KASCScanReceiptRequest *)scanReceiptRequest __attribute__((swift_name("scanReceipt(scanReceiptRequest:)"))); + +/** + * Scan a purchase receipt with a business + * + * This method is used by the Native artifact when dealing with object body params + */ +- (KASCCFlow *> *)scanReceiptMethods:(NSDictionary *)methods __attribute__((swift_name("scanReceipt(methods:)"))); +@property (readonly) KASCCFlow *> *userScanReceiptState __attribute__((swift_name("userScanReceiptState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserScanReceiptApi.Companion"))) +@interface KASCUserScanReceiptApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserScanReceiptApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ScanReceiptRequest"))) +@interface KASCScanReceiptRequest : KASCBase +- (instancetype)initWithQrCodeInfo:(NSString *)qrCodeInfo intent:(NSString *)intent __attribute__((swift_name("init(qrCodeInfo:intent:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCScanReceiptRequestCompanion *companion __attribute__((swift_name("companion"))); +- (KASCScanReceiptRequest *)doCopyQrCodeInfo:(NSString *)qrCodeInfo intent:(NSString *)intent __attribute__((swift_name("doCopy(qrCodeInfo:intent:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *intent __attribute__((swift_name("intent"))); +@property (readonly) NSString *qrCodeInfo __attribute__((swift_name("qrCodeInfo"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ScanReceiptRequest.Companion"))) +@interface KASCScanReceiptRequestCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCScanReceiptRequestCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ScanReceiptResponseModel"))) +@interface KASCScanReceiptResponseModel : KASCModel +- (instancetype)initWithQrCodeInfo:(NSArray * _Nullable)qrCodeInfo __attribute__((swift_name("init(qrCodeInfo:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCScanReceiptResponseModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCScanReceiptResponseModel *)doCopyQrCodeInfo:(NSArray * _Nullable)qrCodeInfo __attribute__((swift_name("doCopy(qrCodeInfo:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable qrCodeInfo __attribute__((swift_name("qrCodeInfo"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ScanReceiptResponseModel.Companion"))) +@interface KASCScanReceiptResponseModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCScanReceiptResponseModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get the spin to win prizes of a business [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GetSpinToWinPrizesApi"))) +@interface KASCGetSpinToWinPrizesApi : KASCApi + +/** + * Get the spin to win prizes of a business [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get the spin to win prizes of a business [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCGetSpinToWinPrizesApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get the spin to win prizes of a business + */ +- (KASCCFlow *> *)getSpinToWinPrizesBusinessId:(NSString *)businessId __attribute__((swift_name("getSpinToWinPrizes(businessId:)"))); +@property (readonly) KASCCFlow *> *getSpinToWinPrizesState __attribute__((swift_name("getSpinToWinPrizesState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GetSpinToWinPrizesApi.Companion"))) +@interface KASCGetSpinToWinPrizesApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGetSpinToWinPrizesApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PrizeModel"))) +@interface KASCPrizeModel : KASCModel +- (instancetype)initWithFillStyle:(NSString * _Nullable)fillStyle text:(NSString * _Nullable)text desc:(NSString * _Nullable)desc prizeId:(KASCInt * _Nullable)prizeId __attribute__((swift_name("init(fillStyle:text:desc:prizeId:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCPrizeModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCPrizeModel *)doCopyFillStyle:(NSString * _Nullable)fillStyle text:(NSString * _Nullable)text desc:(NSString * _Nullable)desc prizeId:(KASCInt * _Nullable)prizeId __attribute__((swift_name("doCopy(fillStyle:text:desc:prizeId:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** prize description */ +@property (readonly) NSString * _Nullable desc __attribute__((swift_name("desc"))); + +/** fill style color */ +@property (readonly) NSString * _Nullable fillStyle __attribute__((swift_name("fillStyle"))); + +/** prize id */ +@property (readonly) KASCInt * _Nullable prizeId __attribute__((swift_name("prizeId"))); + +/** prize name */ +@property (readonly) NSString * _Nullable text __attribute__((swift_name("text"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PrizeModel.Companion"))) +@interface KASCPrizeModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPrizeModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SpinToWinPrizesData"))) +@interface KASCSpinToWinPrizesData : KASCBase +- (instancetype)initWithSpinWinId:(KASCInt * _Nullable)spinWinId spinPrizes:(NSArray * _Nullable)spinPrizes __attribute__((swift_name("init(spinWinId:spinPrizes:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCSpinToWinPrizesDataCompanion *companion __attribute__((swift_name("companion"))); +- (KASCSpinToWinPrizesData *)doCopySpinWinId:(KASCInt * _Nullable)spinWinId spinPrizes:(NSArray * _Nullable)spinPrizes __attribute__((swift_name("doCopy(spinWinId:spinPrizes:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** List of prizes */ +@property (readonly) NSArray * _Nullable spinPrizes __attribute__((swift_name("spinPrizes"))); + +/** spin to win id */ +@property (readonly) KASCInt * _Nullable spinWinId __attribute__((swift_name("spinWinId"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SpinToWinPrizesData.Companion"))) +@interface KASCSpinToWinPrizesDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSpinToWinPrizesDataCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SpinToWinPrizesModel"))) +@interface KASCSpinToWinPrizesModel : KASCModel +- (instancetype)initWithData:(KASCSpinToWinPrizesData * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCSpinToWinPrizesModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCSpinToWinPrizesModel *)doCopyData:(KASCSpinToWinPrizesData * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains a list of all coupons available to this user */ +@property (readonly) KASCSpinToWinPrizesData * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SpinToWinPrizesModel.Companion"))) +@interface KASCSpinToWinPrizesModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSpinToWinPrizesModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Purchase a gift card [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPurchaseApi"))) +@interface KASCGiftCardPurchaseApi : KASCApi + +/** + * Purchase a gift card [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Purchase a gift card [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCGiftCardPurchaseApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Purchase a gift card + */ +- (KASCCFlow *> *)purchaseGiftCardPurchaseGiftCardRequest:(KASCGiftCardPurchaseRequest *)purchaseGiftCardRequest __attribute__((swift_name("purchaseGiftCard(purchaseGiftCardRequest:)"))); + +/** + * Purchase a gift card + * + * This method is used by the Native artifact when dealing with object body params + */ +- (KASCCFlow *> *)purchaseGiftCardMethods:(NSDictionary *)methods __attribute__((swift_name("purchaseGiftCard(methods:)"))); +@property (readonly) KASCCFlow *> *giftCardPurchaseState __attribute__((swift_name("giftCardPurchaseState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPurchaseApi.Companion"))) +@interface KASCGiftCardPurchaseApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardPurchaseApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPayPalPayment"))) +@interface KASCGiftCardPayPalPayment : KASCBase +- (instancetype)initWithPaymentId:(NSString *)paymentId payerId:(NSString *)payerId token:(NSString *)token success:(KASCBoolean * _Nullable)success __attribute__((swift_name("init(paymentId:payerId:token:success:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCGiftCardPayPalPaymentCompanion *companion __attribute__((swift_name("companion"))); +- (KASCGiftCardPayPalPayment *)doCopyPaymentId:(NSString *)paymentId payerId:(NSString *)payerId token:(NSString *)token success:(KASCBoolean * _Nullable)success __attribute__((swift_name("doCopy(paymentId:payerId:token:success:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *payerId __attribute__((swift_name("payerId"))); +@property (readonly) NSString *paymentId __attribute__((swift_name("paymentId"))); +@property (readonly) KASCBoolean * _Nullable success __attribute__((swift_name("success"))); +@property (readonly) NSString *token __attribute__((swift_name("token"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPayPalPayment.Companion"))) +@interface KASCGiftCardPayPalPaymentCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardPayPalPaymentCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPayPalPaymentResponseData"))) +@interface KASCGiftCardPayPalPaymentResponseData : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id provider:(NSString * _Nullable)provider giftcard:(KASCGiftCardPurchaseResponseGiftCardData * _Nullable)giftcard balance:(KASCUserBalance______ * _Nullable)balance __attribute__((swift_name("init(id:provider:giftcard:balance:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCGiftCardPayPalPaymentResponseDataCompanion *companion __attribute__((swift_name("companion"))); +- (KASCGiftCardPayPalPaymentResponseData *)doCopyId:(NSString * _Nullable)id provider:(NSString * _Nullable)provider giftcard:(KASCGiftCardPurchaseResponseGiftCardData * _Nullable)giftcard balance:(KASCUserBalance______ * _Nullable)balance __attribute__((swift_name("doCopy(id:provider:giftcard:balance:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCUserBalance______ * _Nullable balance __attribute__((swift_name("balance"))); +@property (readonly) KASCGiftCardPurchaseResponseGiftCardData * _Nullable giftcard __attribute__((swift_name("giftcard"))); +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSString * _Nullable provider __attribute__((swift_name("provider"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPayPalPaymentResponseData.Companion"))) +@interface KASCGiftCardPayPalPaymentResponseDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardPayPalPaymentResponseDataCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPayPalPaymentResponseModel"))) +@interface KASCGiftCardPayPalPaymentResponseModel : KASCModel +- (instancetype)initWithData:(KASCGiftCardPayPalPaymentResponseData * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCGiftCardPayPalPaymentResponseModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCGiftCardPayPalPaymentResponseModel *)doCopyData:(KASCGiftCardPayPalPaymentResponseData * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCGiftCardPayPalPaymentResponseData * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPayPalPaymentResponseModel.Companion"))) +@interface KASCGiftCardPayPalPaymentResponseModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardPayPalPaymentResponseModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPurchaseRequest"))) +@interface KASCGiftCardPurchaseRequest : KASCBase +- (instancetype)initWithIntent:(NSString *)intent provider:(NSString *)provider giftcardId:(int32_t)giftcardId paypalPayment:(KASCGiftCardPayPalPayment *)paypalPayment __attribute__((swift_name("init(intent:provider:giftcardId:paypalPayment:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCGiftCardPurchaseRequestCompanion *companion __attribute__((swift_name("companion"))); +- (KASCGiftCardPurchaseRequest *)doCopyIntent:(NSString *)intent provider:(NSString *)provider giftcardId:(int32_t)giftcardId paypalPayment:(KASCGiftCardPayPalPayment *)paypalPayment __attribute__((swift_name("doCopy(intent:provider:giftcardId:paypalPayment:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) int32_t giftcardId __attribute__((swift_name("giftcardId"))); +@property (readonly) NSString *intent __attribute__((swift_name("intent"))); +@property (readonly) KASCGiftCardPayPalPayment *paypalPayment __attribute__((swift_name("paypalPayment"))); +@property (readonly) NSString *provider __attribute__((swift_name("provider"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPurchaseRequest.Companion"))) +@interface KASCGiftCardPurchaseRequestCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardPurchaseRequestCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPurchaseResponseGiftCardData"))) +@interface KASCGiftCardPurchaseResponseGiftCardData : KASCBase +- (instancetype)initWithId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title price:(KASCDouble * _Nullable)price currency:(NSString * _Nullable)currency quantity:(NSString * _Nullable)quantity __attribute__((swift_name("init(id:title:price:currency:quantity:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCGiftCardPurchaseResponseGiftCardDataCompanion *companion __attribute__((swift_name("companion"))); +- (KASCGiftCardPurchaseResponseGiftCardData *)doCopyId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title price:(KASCDouble * _Nullable)price currency:(NSString * _Nullable)currency quantity:(NSString * _Nullable)quantity __attribute__((swift_name("doCopy(id:title:price:currency:quantity:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable currency __attribute__((swift_name("currency"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCDouble * _Nullable price __attribute__((swift_name("price"))); +@property (readonly) NSString * _Nullable quantity __attribute__((swift_name("quantity"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPurchaseResponseGiftCardData.Companion"))) +@interface KASCGiftCardPurchaseResponseGiftCardDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardPurchaseResponseGiftCardDataCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile balance data. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance______"))) +@interface KASCUserBalance______ : KASCBase +- (instancetype)initWithPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("init(points:giftcard:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBalance______Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile balance data. + */ +- (KASCUserBalance______ *)doCopyPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("doCopy(points:giftcard:)"))); + +/** + * User Profile balance data. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile balance data. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile balance data. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount of store credit in the users' e-wallet. */ +@property (readonly) KASCDouble * _Nullable giftcard __attribute__((swift_name("giftcard"))); + +/** The number of points this user currently has. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + + +/** + * User Profile balance data. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance______.Companion"))) +@interface KASCUserBalance______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile balance data. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBalance______Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile balance data. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Acquires specific business banners. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessBannersApi"))) +@interface KASCUserBusinessBannersApi : KASCApi + +/** + * Acquires specific business banners. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Acquires specific business banners. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserBusinessBannersApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Acquires specific business banners. + */ +- (KASCCFlow *> *)getUserBusinessBannersBusinessId:(NSString *)businessId __attribute__((swift_name("getUserBusinessBanners(businessId:)"))); +@property (readonly) KASCCFlow *> *userBusinessBannersState __attribute__((swift_name("userBusinessBannersState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessBannersApi.Companion"))) +@interface KASCUserBusinessBannersApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessBannersApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * A business banner. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Banner_"))) +@interface KASCBanner_ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id type:(KASCInt * _Nullable)type imagePath:(NSString * _Nullable)imagePath link:(NSString * _Nullable)link createdAt:(NSString * _Nullable)createdAt publishedAt:(NSString * _Nullable)publishedAt expiresAt:(NSString * _Nullable)expiresAt language:(KASCLanguage___________________ * _Nullable)language __attribute__((swift_name("init(id:type:imagePath:link:createdAt:publishedAt:expiresAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBanner_Companion *companion __attribute__((swift_name("companion"))); + +/** + * A business banner. + */ +- (KASCBanner_ *)doCopyId:(KASCLong * _Nullable)id type:(KASCInt * _Nullable)type imagePath:(NSString * _Nullable)imagePath link:(NSString * _Nullable)link createdAt:(NSString * _Nullable)createdAt publishedAt:(NSString * _Nullable)publishedAt expiresAt:(NSString * _Nullable)expiresAt language:(KASCLanguage___________________ * _Nullable)language __attribute__((swift_name("doCopy(id:type:imagePath:link:createdAt:publishedAt:expiresAt:language:)"))); + +/** + * A business banner. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A business banner. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A business banner. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); + +/** Unique banner id. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable imagePath __attribute__((swift_name("imagePath"))); +@property (readonly) KASCLanguage___________________ * _Nullable language __attribute__((swift_name("language"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable publishedAt __attribute__((swift_name("publishedAt"))); + +/** The banner type. */ +@property (readonly) KASCInt * _Nullable type __attribute__((swift_name("type"))); +@end + + +/** + * A business banner. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Banner_.Companion"))) +@interface KASCBanner_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A business banner. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBanner_Companion *shared __attribute__((swift_name("shared"))); + +/** + * A business banner. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory____"))) +@interface KASCBusinessCategory____ : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("init(name:icon:code:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessCategory____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (KASCBusinessCategory____ *)doCopyName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("doCopy(name:icon:code:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique ategory code for this category */ +@property (readonly) NSString * _Nullable code __attribute__((swift_name("code"))); + +/** Url to this category's icon */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** Name of this category */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory____.Companion"))) +@interface KASCBusinessCategory____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessCategory____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData____"))) +@interface KASCBusinessData____ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage________ * _Nullable)logo logoTransparentBackground:(KASCImage________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage________ * _Nullable)coverPhoto category:(KASCBusinessCategory____ * _Nullable)category __attribute__((swift_name("init(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessData____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Business profile data + */ +- (KASCBusinessData____ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage________ * _Nullable)logo logoTransparentBackground:(KASCImage________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage________ * _Nullable)coverPhoto category:(KASCBusinessCategory____ * _Nullable)category __attribute__((swift_name("doCopy(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))); + +/** + * Business profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** General about text for the business */ +@property (readonly) NSString * _Nullable about __attribute__((swift_name("about"))); +@property (readonly) KASCBusinessCategory____ * _Nullable category __attribute__((swift_name("category"))); + +/** Whether this is a conglomerate business. Conglomerate businesses are umbrellas for multiple business' in Kangaroo */ +@property (readonly) NSString * _Nullable conglomerate __attribute__((swift_name("conglomerate"))); +@property (readonly) KASCImage________ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique business ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage________ * _Nullable logo __attribute__((swift_name("logo"))); +@property (readonly) KASCImage________ * _Nullable logoTransparentBackground __attribute__((swift_name("logoTransparentBackground"))); + +/** The manner in which this business rewards its customers. This can be by purchase amount of by visit to the store */ +@property (readonly) NSString * _Nullable loyaltyType __attribute__((swift_name("loyaltyType"))); + +/** The name of this business */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** Whether this is a white label business. White label business' don't appear in the Kangaroo Mobile Customer app, as they usually have their own app. */ +@property (readonly) NSString * _Nullable whiteLabel __attribute__((swift_name("whiteLabel"))); +@end + + +/** + * Business profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData____.Companion"))) +@interface KASCBusinessData____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessData____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Business profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image________"))) +@interface KASCImage________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image________.Companion"))) +@interface KASCImage________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language___________________"))) +@interface KASCLanguage___________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage___________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage___________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language___________________.Companion"))) +@interface KASCLanguage___________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage___________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessBannersIncluded"))) +@interface KASCUserBusinessBannersIncluded : KASCBase +- (instancetype)initWithBanners:(NSArray * _Nullable)banners __attribute__((swift_name("init(banners:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBusinessBannersIncludedCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserBusinessBannersIncluded *)doCopyBanners:(NSArray * _Nullable)banners __attribute__((swift_name("doCopy(banners:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable banners __attribute__((swift_name("banners"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessBannersIncluded.Companion"))) +@interface KASCUserBusinessBannersIncludedCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessBannersIncludedCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business banners. Used to display promotional material. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessBannersModel"))) +@interface KASCUserBusinessBannersModel : KASCModel +- (instancetype)initWithData:(KASCBusinessData____ * _Nullable)data included:(KASCUserBusinessBannersIncluded * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserBusinessBannersModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Business banners. Used to display promotional material. + */ +- (KASCUserBusinessBannersModel *)doCopyData:(KASCBusinessData____ * _Nullable)data included:(KASCUserBusinessBannersIncluded * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * Business banners. Used to display promotional material. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business banners. Used to display promotional material. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business banners. Used to display promotional material. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains business data */ +@property (readonly) KASCBusinessData____ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains all A la carte items */ +@property (readonly) KASCUserBusinessBannersIncluded * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * Business banners. Used to display promotional material. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessBannersModel.Companion"))) +@interface KASCUserBusinessBannersModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business banners. Used to display promotional material. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessBannersModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Business banners. Used to display promotional material. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of offers available to this user. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserOffersApi"))) +@interface KASCUserOffersApi : KASCApi + +/** + * Get a list of offers available to this user. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of offers available to this user. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserOffersApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of offers available to this user. + */ +- (KASCCFlow *> *)getUserOffers __attribute__((swift_name("getUserOffers()"))); +@property (readonly) KASCCFlow *> *userOffersState __attribute__((swift_name("userOffersState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserOffersApi.Companion"))) +@interface KASCUserOffersApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserOffersApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_________"))) +@interface KASCImage_________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage_________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage_________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_________.Companion"))) +@interface KASCImage_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage_________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language____________________"))) +@interface KASCLanguage____________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage____________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage____________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language____________________.Companion"))) +@interface KASCLanguage____________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage____________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction__"))) +@interface KASCOfferAction__ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferAction__Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferAction__ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction__.Companion"))) +@interface KASCOfferAction__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferAction__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel__"))) +@interface KASCOfferModel__ : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCOfferModel__Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferModel__ *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this offer. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** Whether this offer must be claimed on a mobile app before being used in store. */ +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The offer description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this offer. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isCouponRedeemed __attribute__((swift_name("isCouponRedeemed"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this offer. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** The maximum purchase amount for this offer to be applied. */ +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); + +/** The minimum purchase amount for this offer to be applied */ +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); + +/** The multiplication factor of this offer. This only applies to Point Multiplier offers. */ +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this offer ever expires or not. If false, this offer is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this offer into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); + +/** The amount of points required for this offer to be applied. Only used for Convertible Coupons */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this offer */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this offer. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The offer title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This can be a free product, dollar based discount, percentage based discount, point multiplier, bonus points, and free shipping. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel__.Companion"))) +@interface KASCOfferModel__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferModel__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this offer. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation__"))) +@interface KASCOfferTranslation__ : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage____________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferTranslation__Companion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this offer. + */ +- (KASCOfferTranslation__ *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage____________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))); + +/** + * A language translation of this offer. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this offer. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this offer. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** where is this coupon available at. */ +@property (readonly) NSString * _Nullable couponAvailableAt __attribute__((swift_name("couponAvailableAt"))); + +/** The translated coupon description. */ +@property (readonly) NSString * _Nullable couponDescription __attribute__((swift_name("couponDescription"))); + +/** The language appropriate link of this coupon. */ +@property (readonly) NSString * _Nullable couponLink __attribute__((swift_name("couponLink"))); + +/** The translated coupon terms and conditions. */ +@property (readonly) NSString * _Nullable couponTermsConditions __attribute__((swift_name("couponTermsConditions"))); + +/** The translated coupon title. */ +@property (readonly) NSString * _Nullable couponTitle __attribute__((swift_name("couponTitle"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage____________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated offer description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this offer. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated offer terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated offer title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this offer. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation__.Companion"))) +@interface KASCOfferTranslation__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this offer. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferTranslation__Companion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this offer. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserOffersModel"))) +@interface KASCUserOffersModel : KASCModel +- (instancetype)initWithData:(NSArray *)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserOffersModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserOffersModel *)doCopyData:(NSArray *)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of all offers available to this user */ +@property (readonly) NSArray *data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserOffersModel.Companion"))) +@interface KASCUserOffersModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserOffersModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * update the last business chosen by the user in the conglomerate feature [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UpdateDefaultBusinessIdApi"))) +@interface KASCUpdateDefaultBusinessIdApi : KASCApi + +/** + * update the last business chosen by the user in the conglomerate feature [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * update the last business chosen by the user in the conglomerate feature [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUpdateDefaultBusinessIdApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * update the last business chosen by the user in the conglomerate feature + */ +- (KASCCFlow *> *)updateDefaultBusinessIdBusinessId:(NSString *)businessId defaultBusinessId:(NSString *)defaultBusinessId __attribute__((swift_name("updateDefaultBusinessId(businessId:defaultBusinessId:)"))); +@property (readonly) KASCCFlow *> *updateDefaultBusinessIdState __attribute__((swift_name("updateDefaultBusinessIdState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UpdateDefaultBusinessIdApi.Companion"))) +@interface KASCUpdateDefaultBusinessIdApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUpdateDefaultBusinessIdApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Default business chosen by the user + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("DefaultBusiness"))) +@interface KASCDefaultBusiness : KASCModel +- (instancetype)initWithData:(KASCDefaultBusinessData * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCDefaultBusinessCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Default business chosen by the user + */ +- (KASCDefaultBusiness *)doCopyData:(KASCDefaultBusinessData * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * Default business chosen by the user + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Default business chosen by the user + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Default business chosen by the user + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Details about the default business */ +@property (readonly) KASCDefaultBusinessData * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * Default business chosen by the user + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("DefaultBusiness.Companion"))) +@interface KASCDefaultBusinessCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Default business chosen by the user + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCDefaultBusinessCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Default business chosen by the user + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Default Business id data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("DefaultBusinessData"))) +@interface KASCDefaultBusinessData : KASCBase +- (instancetype)initWithDefaultBranchId:(NSString * _Nullable)defaultBranchId defaultBusinessId:(NSString * _Nullable)defaultBusinessId __attribute__((swift_name("init(defaultBranchId:defaultBusinessId:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCDefaultBusinessDataCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Default Business id data + */ +- (KASCDefaultBusinessData *)doCopyDefaultBranchId:(NSString * _Nullable)defaultBranchId defaultBusinessId:(NSString * _Nullable)defaultBusinessId __attribute__((swift_name("doCopy(defaultBranchId:defaultBusinessId:)"))); + +/** + * Default Business id data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Default Business id data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Default Business id data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique branch Id */ +@property (readonly) NSString * _Nullable defaultBranchId __attribute__((swift_name("defaultBranchId"))); + +/** Unique business Id */ +@property (readonly) NSString * _Nullable defaultBusinessId __attribute__((swift_name("defaultBusinessId"))); +@end + + +/** + * Default Business id data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("DefaultBusinessData.Companion"))) +@interface KASCDefaultBusinessDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Default Business id data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCDefaultBusinessDataCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Default Business id data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Request a PIN reset. Either a phone number or email address is required If successful, a verification code will be sent by either email or SMS message. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserPinResetRequestApi"))) +@interface KASCUserPinResetRequestApi : KASCApi + +/** + * Request a PIN reset. Either a phone number or email address is required If successful, a verification code will be sent by either email or SMS message. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Request a PIN reset. Either a phone number or email address is required If successful, a verification code will be sent by either email or SMS message. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserPinResetRequestApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Request a PIN reset. Either a phone number or email address is required If successful, a verification code will be sent by either email or SMS message. + */ +- (KASCCFlow *> *)requestPinResetMode:(NSString *)mode email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone countryCode:(NSString * _Nullable)countryCode __attribute__((swift_name("requestPinReset(mode:email:phone:countryCode:)"))); +@property (readonly) KASCCFlow *> *userPinResetRequestState __attribute__((swift_name("userPinResetRequestState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserPinResetRequestApi.Companion"))) +@interface KASCUserPinResetRequestApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserPinResetRequestApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * User PIN reset request status + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserPinResetRequest"))) +@interface KASCUserPinResetRequest : KASCModel +- (instancetype)initWithStatusCode:(int32_t)statusCode message:(NSString *)message description:(NSString *)description __attribute__((swift_name("init(statusCode:message:description:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserPinResetRequestCompanion *companion __attribute__((swift_name("companion"))); + +/** + * User PIN reset request status + */ +- (KASCUserPinResetRequest *)doCopyStatusCode:(int32_t)statusCode message:(NSString *)message description:(NSString *)description __attribute__((swift_name("doCopy(statusCode:message:description:)"))); + +/** + * User PIN reset request status + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User PIN reset request status + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User PIN reset request status + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A description of the pin reset request */ +@property (readonly) NSString *description_ __attribute__((swift_name("description_"))); + +/** The message and status returned by the pin reset request */ +@property (readonly) NSString *message __attribute__((swift_name("message"))); + +/** The response code for the pin reset request. Anything within the 200 range indicates a success */ +@property (readonly) int32_t statusCode __attribute__((swift_name("statusCode"))); +@end + + +/** + * User PIN reset request status + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserPinResetRequest.Companion"))) +@interface KASCUserPinResetRequestCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User PIN reset request status + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserPinResetRequestCompanion *shared __attribute__((swift_name("shared"))); + +/** + * User PIN reset request status + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Claim an offer. Once it has been claimed it will be available to be used towards a purchase. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ClaimOfferApi"))) +@interface KASCClaimOfferApi : KASCApi + +/** + * Claim an offer. Once it has been claimed it will be available to be used towards a purchase. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Claim an offer. Once it has been claimed it will be available to be used towards a purchase. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCClaimOfferApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Claim an offer. Once it has been claimed it will be available to be used towards a purchase. + */ +- (KASCCFlow *> *)claimOfferOfferId:(int32_t)offerId customerId:(NSString *)customerId __attribute__((swift_name("claimOffer(offerId:customerId:)"))); +@property (readonly) KASCCFlow *> *claimOfferState __attribute__((swift_name("claimOfferState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ClaimOfferApi.Companion"))) +@interface KASCClaimOfferApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCClaimOfferApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ClaimedOfferModel"))) +@interface KASCClaimedOfferModel : KASCModel +- (instancetype)initWithData:(KASCOfferModel___ * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCClaimedOfferModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCClaimedOfferModel *)doCopyData:(KASCOfferModel___ * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCOfferModel___ * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ClaimedOfferModel.Companion"))) +@interface KASCClaimedOfferModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCClaimedOfferModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image__________"))) +@interface KASCImage__________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage__________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage__________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image__________.Companion"))) +@interface KASCImage__________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage__________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_____________________"))) +@interface KASCLanguage_____________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_____________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_____________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_____________________.Companion"))) +@interface KASCLanguage_____________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_____________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction___"))) +@interface KASCOfferAction___ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferAction___Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferAction___ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction___.Companion"))) +@interface KASCOfferAction___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferAction___Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel___"))) +@interface KASCOfferModel___ : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCOfferModel___Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferModel___ *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this offer. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** Whether this offer must be claimed on a mobile app before being used in store. */ +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The offer description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this offer. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isCouponRedeemed __attribute__((swift_name("isCouponRedeemed"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this offer. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** The maximum purchase amount for this offer to be applied. */ +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); + +/** The minimum purchase amount for this offer to be applied */ +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); + +/** The multiplication factor of this offer. This only applies to Point Multiplier offers. */ +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this offer ever expires or not. If false, this offer is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this offer into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); + +/** The amount of points required for this offer to be applied. Only used for Convertible Coupons */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this offer */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this offer. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The offer title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This can be a free product, dollar based discount, percentage based discount, point multiplier, bonus points, and free shipping. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel___.Companion"))) +@interface KASCOfferModel___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferModel___Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this offer. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation___"))) +@interface KASCOfferTranslation___ : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage_____________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferTranslation___Companion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this offer. + */ +- (KASCOfferTranslation___ *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage_____________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))); + +/** + * A language translation of this offer. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this offer. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this offer. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** where is this coupon available at. */ +@property (readonly) NSString * _Nullable couponAvailableAt __attribute__((swift_name("couponAvailableAt"))); + +/** The translated coupon description. */ +@property (readonly) NSString * _Nullable couponDescription __attribute__((swift_name("couponDescription"))); + +/** The language appropriate link of this coupon. */ +@property (readonly) NSString * _Nullable couponLink __attribute__((swift_name("couponLink"))); + +/** The translated coupon terms and conditions. */ +@property (readonly) NSString * _Nullable couponTermsConditions __attribute__((swift_name("couponTermsConditions"))); + +/** The translated coupon title. */ +@property (readonly) NSString * _Nullable couponTitle __attribute__((swift_name("couponTitle"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_____________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated offer description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this offer. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated offer terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated offer title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this offer. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation___.Companion"))) +@interface KASCOfferTranslation___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this offer. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferTranslation___Companion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this offer. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get transaction history this user. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserTransactionHistoryApi"))) +@interface KASCUserTransactionHistoryApi : KASCApi + +/** + * Get transaction history this user. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get transaction history this user. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserTransactionHistoryApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get transaction history this user. + */ +- (KASCCFlow *> *)getUserTransactionHistory __attribute__((swift_name("getUserTransactionHistory()"))); +@property (readonly) KASCCFlow *> *userTransactionHistoryState __attribute__((swift_name("userTransactionHistoryState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserTransactionHistoryApi.Companion"))) +@interface KASCUserTransactionHistoryApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserTransactionHistoryApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Transaction model containting transaction details + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Transaction"))) +@interface KASCTransaction : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id amount:(KASCDouble * _Nullable)amount points:(KASCDouble * _Nullable)points name:(NSString * _Nullable)name transactionType:(KASCInt * _Nullable)transactionType createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt __attribute__((swift_name("init(id:amount:points:name:transactionType:createdAt:updatedAt:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransactionCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Transaction model containting transaction details + */ +- (KASCTransaction *)doCopyId:(KASCLong * _Nullable)id amount:(KASCDouble * _Nullable)amount points:(KASCDouble * _Nullable)points name:(NSString * _Nullable)name transactionType:(KASCInt * _Nullable)transactionType createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt __attribute__((swift_name("doCopy(id:amount:points:name:transactionType:createdAt:updatedAt:)"))); + +/** + * Transaction model containting transaction details + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Transaction model containting transaction details + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Transaction model containting transaction details + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount in $ for this transaction. */ +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); + +/** Date the transaction was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Unique transaction ID. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** The transaction label. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount in points for this transaction. */ +@property (readonly) KASCDouble * _Nullable points __attribute__((swift_name("points"))); + +/** The transaction type ID. */ +@property (readonly) KASCInt * _Nullable transactionType __attribute__((swift_name("transactionType"))); + +/** Date the transaction was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * Transaction model containting transaction details + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Transaction.Companion"))) +@interface KASCTransactionCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Transaction model containting transaction details + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransactionCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Transaction model containting transaction details + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserTransactionHistoryModel"))) +@interface KASCUserTransactionHistoryModel : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserTransactionHistoryModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserTransactionHistoryModel *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains user transaction history. */ +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserTransactionHistoryModel.Companion"))) +@interface KASCUserTransactionHistoryModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserTransactionHistoryModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of social media links for this business [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaLinksApi"))) +@interface KASCSocialMediaLinksApi : KASCApi + +/** + * Get a list of social media links for this business [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of social media links for this business [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCSocialMediaLinksApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of social media links for this business + */ +- (KASCCFlow *> *)getSocialMediaLinks __attribute__((swift_name("getSocialMediaLinks()"))); +@property (readonly) KASCCFlow *> *socialMediaLinksState __attribute__((swift_name("socialMediaLinksState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaLinksApi.Companion"))) +@interface KASCSocialMediaLinksApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSocialMediaLinksApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessActionModel_"))) +@interface KASCBusinessActionModel_ : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id points:(KASCLong * _Nullable)points actionId:(KASCInt * _Nullable)actionId __attribute__((swift_name("init(id:points:actionId:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCBusinessActionModel_Companion *companion __attribute__((swift_name("companion"))); +- (KASCBusinessActionModel_ *)doCopyId:(KASCInt * _Nullable)id points:(KASCLong * _Nullable)points actionId:(KASCInt * _Nullable)actionId __attribute__((swift_name("doCopy(id:points:actionId:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCInt * _Nullable actionId __attribute__((swift_name("actionId"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessActionModel_.Companion"))) +@interface KASCBusinessActionModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessActionModel_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaLinksIncluded_"))) +@interface KASCSocialMediaLinksIncluded_ : KASCBase +- (instancetype)initWithSocialMedia:(NSArray * _Nullable)socialMedia __attribute__((swift_name("init(socialMedia:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCSocialMediaLinksIncluded_Companion *companion __attribute__((swift_name("companion"))); +- (KASCSocialMediaLinksIncluded_ *)doCopySocialMedia:(NSArray * _Nullable)socialMedia __attribute__((swift_name("doCopy(socialMedia:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable socialMedia __attribute__((swift_name("socialMedia"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaLinksIncluded_.Companion"))) +@interface KASCSocialMediaLinksIncluded_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSocialMediaLinksIncluded_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Social media links for this business + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaLinksModel_"))) +@interface KASCSocialMediaLinksModel_ : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel___________ * _Nullable)data included:(KASCSocialMediaLinksIncluded_ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCSocialMediaLinksModel_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Social media links for this business + */ +- (KASCSocialMediaLinksModel_ *)doCopyData:(KASCUserProfileDataModel___________ * _Nullable)data included:(KASCSocialMediaLinksIncluded_ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * Social media links for this business + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Social media links for this business + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Social media links for this business + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user data */ +@property (readonly) KASCUserProfileDataModel___________ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains social media links */ +@property (readonly) KASCSocialMediaLinksIncluded_ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * Social media links for this business + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaLinksModel_.Companion"))) +@interface KASCSocialMediaLinksModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Social media links for this business + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSocialMediaLinksModel_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Social media links for this business + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaModel_"))) +@interface KASCSocialMediaModel_ : KASCModel +- (instancetype)initWithIcon:(NSString * _Nullable)icon url:(NSString * _Nullable)url businessAction:(KASCBusinessActionModel_ * _Nullable)businessAction userActionCompleted:(KASCBoolean * _Nullable)userActionCompleted __attribute__((swift_name("init(icon:url:businessAction:userActionCompleted:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCSocialMediaModel_Companion *companion __attribute__((swift_name("companion"))); +- (KASCSocialMediaModel_ *)doCopyIcon:(NSString * _Nullable)icon url:(NSString * _Nullable)url businessAction:(KASCBusinessActionModel_ * _Nullable)businessAction userActionCompleted:(KASCBoolean * _Nullable)userActionCompleted __attribute__((swift_name("doCopy(icon:url:businessAction:userActionCompleted:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCBusinessActionModel_ * _Nullable businessAction __attribute__((swift_name("businessAction"))); +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); +@property (readonly) NSString * _Nullable url __attribute__((swift_name("url"))); +@property (readonly) KASCBoolean * _Nullable userActionCompleted __attribute__((swift_name("userActionCompleted"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaModel_.Companion"))) +@interface KASCSocialMediaModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSocialMediaModel_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel___________"))) +@interface KASCUserProfileDataModel___________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel___________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel___________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel___________.Companion"))) +@interface KASCUserProfileDataModel___________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel___________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get user products list [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProductsApi"))) +@interface KASCUserProductsApi : KASCApi + +/** + * Get user products list [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get user products list [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserProductsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get user products list + */ +- (KASCCFlow *> *)getUserProducts __attribute__((swift_name("getUserProducts()"))); +@property (readonly) KASCCFlow *> *userProductsState __attribute__((swift_name("userProductsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProductsApi.Companion"))) +@interface KASCUserProductsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProductsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images____"))) +@interface KASCImages____ : KASCBase +- (instancetype)initWithPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(path:large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImages____Companion *companion __attribute__((swift_name("companion"))); +- (KASCImages____ *)doCopyPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(path:large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable path __attribute__((swift_name("path"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images____.Companion"))) +@interface KASCImages____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImages____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language______________________"))) +@interface KASCLanguage______________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage______________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage______________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language______________________.Companion"))) +@interface KASCLanguage______________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage______________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages____"))) +@interface KASCLanguages____ : KASCBase +- (instancetype)initWithLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage______________________ * _Nullable)language __attribute__((swift_name("init(languageId:title:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguages____Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguages____ *)doCopyLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage______________________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCLanguage______________________ * _Nullable language __attribute__((swift_name("language"))); +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages____.Companion"))) +@interface KASCLanguages____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguages____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product____"))) +@interface KASCProduct____ : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("init(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCProduct____Companion *companion __attribute__((swift_name("companion"))); +- (KASCProduct____ *)doCopyId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("doCopy(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCFloat * _Nullable actualPrice __attribute__((swift_name("actualPrice"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) NSArray * _Nullable productLanguages __attribute__((swift_name("productLanguages"))); +@property (readonly) NSString * _Nullable productSku __attribute__((swift_name("productSku"))); +@property (readonly) KASCFloat * _Nullable realPrice __attribute__((swift_name("realPrice"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product____.Companion"))) +@interface KASCProduct____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCProduct____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProductsIncluded"))) +@interface KASCUserProductsIncluded : KASCBase +- (instancetype)initWithProducts:(NSArray * _Nullable)products __attribute__((swift_name("init(products:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserProductsIncludedCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserProductsIncluded *)doCopyProducts:(NSArray * _Nullable)products __attribute__((swift_name("doCopy(products:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable products __attribute__((swift_name("products"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProductsIncluded.Companion"))) +@interface KASCUserProductsIncludedCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProductsIncludedCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Product model class containing user product list + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProductsModel"))) +@interface KASCUserProductsModel : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel____________ * _Nullable)data included:(KASCUserProductsIncluded * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProductsModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * User Product model class containing user product list + */ +- (KASCUserProductsModel *)doCopyData:(KASCUserProfileDataModel____________ * _Nullable)data included:(KASCUserProductsIncluded * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Product model class containing user product list + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Product model class containing user product list + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Product model class containing user product list + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user data */ +@property (readonly) KASCUserProfileDataModel____________ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains products available to this user */ +@property (readonly) KASCUserProductsIncluded * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Product model class containing user product list + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProductsModel.Companion"))) +@interface KASCUserProductsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Product model class containing user product list + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProductsModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * User Product model class containing user product list + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel____________"))) +@interface KASCUserProfileDataModel____________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel____________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel____________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel____________.Companion"))) +@interface KASCUserProfileDataModel____________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel____________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Register a new user. Either a phone number or an email address is required. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserRegistrationApi"))) +@interface KASCUserRegistrationApi : KASCApi + +/** + * Register a new user. Either a phone number or an email address is required. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Register a new user. Either a phone number or an email address is required. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserRegistrationApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Register a new user. Either a phone number or an email address is required. + */ +- (KASCCFlow *> *)createAccountEmail:(NSString * _Nullable)email phone:(NSString * _Nullable)phone countryCode:(NSString * _Nullable)countryCode language:(NSString * _Nullable)language __attribute__((swift_name("createAccount(email:phone:countryCode:language:)"))); +@property (readonly) KASCCFlow *> *userRegistrationState __attribute__((swift_name("userRegistrationState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserRegistrationApi.Companion"))) +@interface KASCUserRegistrationApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserRegistrationApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_____________"))) +@interface KASCUserProfileDataModel_____________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel_____________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel_____________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_____________.Companion"))) +@interface KASCUserProfileDataModel_____________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel_____________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get the business associated with this user account and application [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessApi"))) +@interface KASCBusinessApi : KASCApi + +/** + * Get the business associated with this user account and application [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get the business associated with this user account and application [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCBusinessApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get the business associated with this user account and application + */ +- (KASCCFlow *> *)getBusinessBusinessId:(NSString *)businessId __attribute__((swift_name("getBusiness(businessId:)"))); +@property (readonly) KASCCFlow *> *businessState __attribute__((swift_name("businessState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessApi.Companion"))) +@interface KASCBusinessApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Branch_"))) +@interface KASCBranch_ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name webSite:(NSString * _Nullable)webSite phone:(KASCBranchPhone_ * _Nullable)phone logo:(KASCImage___________ * _Nullable)logo coverPhoto:(KASCImage___________ * _Nullable)coverPhoto address:(KASCBranchAddress_ * _Nullable)address __attribute__((swift_name("init(id:name:webSite:phone:logo:coverPhoto:address:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBranch_Companion *companion __attribute__((swift_name("companion"))); +- (KASCBranch_ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name webSite:(NSString * _Nullable)webSite phone:(KASCBranchPhone_ * _Nullable)phone logo:(KASCImage___________ * _Nullable)logo coverPhoto:(KASCImage___________ * _Nullable)coverPhoto address:(KASCBranchAddress_ * _Nullable)address __attribute__((swift_name("doCopy(id:name:webSite:phone:logo:coverPhoto:address:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCBranchAddress_ * _Nullable address __attribute__((swift_name("address"))); +@property (readonly) KASCImage___________ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique ID for this branch */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage___________ * _Nullable logo __attribute__((swift_name("logo"))); + +/** The name of this branch */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@property (readonly) KASCBranchPhone_ * _Nullable phone __attribute__((swift_name("phone"))); + +/** The website for this branch */ +@property (readonly) NSString * _Nullable webSite __attribute__((swift_name("webSite"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Branch_.Companion"))) +@interface KASCBranch_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBranch_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchAddress_"))) +@interface KASCBranchAddress_ : KASCBase +- (instancetype)initWithFormatted:(NSString * _Nullable)formatted street:(NSString * _Nullable)street city:(NSString * _Nullable)city region:(NSString * _Nullable)region country:(NSString * _Nullable)country lat:(KASCFloat * _Nullable)lat long:(KASCFloat * _Nullable)long_ __attribute__((swift_name("init(formatted:street:city:region:country:lat:long:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBranchAddress_Companion *companion __attribute__((swift_name("companion"))); +- (KASCBranchAddress_ *)doCopyFormatted:(NSString * _Nullable)formatted street:(NSString * _Nullable)street city:(NSString * _Nullable)city region:(NSString * _Nullable)region country:(NSString * _Nullable)country lat:(KASCFloat * _Nullable)lat long:(KASCFloat * _Nullable)long_ __attribute__((swift_name("doCopy(formatted:street:city:region:country:lat:long:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable city __attribute__((swift_name("city"))); +@property (readonly) NSString * _Nullable country __attribute__((swift_name("country"))); +@property (readonly) NSString * _Nullable formatted __attribute__((swift_name("formatted"))); +@property (readonly) KASCFloat * _Nullable lat __attribute__((swift_name("lat"))); +@property (readonly, getter=long) KASCFloat * _Nullable long_ __attribute__((swift_name("long_"))); +@property (readonly) NSString * _Nullable region __attribute__((swift_name("region"))); +@property (readonly) NSString * _Nullable street __attribute__((swift_name("street"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchAddress_.Companion"))) +@interface KASCBranchAddress_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBranchAddress_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchPhone_"))) +@interface KASCBranchPhone_ : KASCBase +- (instancetype)initWithNumber:(NSString * _Nullable)number countryCode:(NSString * _Nullable)countryCode nationalFormat:(NSString * _Nullable)nationalFormat intlFormat:(NSString * _Nullable)intlFormat __attribute__((swift_name("init(number:countryCode:nationalFormat:intlFormat:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBranchPhone_Companion *companion __attribute__((swift_name("companion"))); +- (KASCBranchPhone_ *)doCopyNumber:(NSString * _Nullable)number countryCode:(NSString * _Nullable)countryCode nationalFormat:(NSString * _Nullable)nationalFormat intlFormat:(NSString * _Nullable)intlFormat __attribute__((swift_name("doCopy(number:countryCode:nationalFormat:intlFormat:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); +@property (readonly) NSString * _Nullable intlFormat __attribute__((swift_name("intlFormat"))); +@property (readonly) NSString * _Nullable nationalFormat __attribute__((swift_name("nationalFormat"))); +@property (readonly) NSString * _Nullable number __attribute__((swift_name("number"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchPhone_.Companion"))) +@interface KASCBranchPhone_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBranchPhone_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Business_"))) +@interface KASCBusiness_ : KASCModel +- (instancetype)initWithData:(KASCBusinessData_____ * _Nullable)data included:(KASCBusinessBranchesData_ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCBusiness_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +- (KASCBusiness_ *)doCopyData:(KASCBusinessData_____ * _Nullable)data included:(KASCBusinessBranchesData_ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Details about a business */ +@property (readonly) KASCBusinessData_____ * _Nullable data __attribute__((swift_name("data"))); + +/** Details about a business' branches */ +@property (readonly) KASCBusinessBranchesData_ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Business_.Companion"))) +@interface KASCBusiness_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusiness_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessBranchesData_"))) +@interface KASCBusinessBranchesData_ : KASCBase +- (instancetype)initWithBranches:(NSArray * _Nullable)branches __attribute__((swift_name("init(branches:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessBranchesData_Companion *companion __attribute__((swift_name("companion"))); +- (KASCBusinessBranchesData_ *)doCopyBranches:(NSArray * _Nullable)branches __attribute__((swift_name("doCopy(branches:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable branches __attribute__((swift_name("branches"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessBranchesData_.Companion"))) +@interface KASCBusinessBranchesData_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessBranchesData_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory_____"))) +@interface KASCBusinessCategory_____ : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("init(name:icon:code:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessCategory_____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (KASCBusinessCategory_____ *)doCopyName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("doCopy(name:icon:code:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique ategory code for this category */ +@property (readonly) NSString * _Nullable code __attribute__((swift_name("code"))); + +/** Url to this category's icon */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** Name of this category */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory_____.Companion"))) +@interface KASCBusinessCategory_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessCategory_____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData_____"))) +@interface KASCBusinessData_____ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage___________ * _Nullable)logo logoTransparentBackground:(KASCImage___________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage___________ * _Nullable)coverPhoto category:(KASCBusinessCategory_____ * _Nullable)category __attribute__((swift_name("init(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessData_____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Business profile data + */ +- (KASCBusinessData_____ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage___________ * _Nullable)logo logoTransparentBackground:(KASCImage___________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage___________ * _Nullable)coverPhoto category:(KASCBusinessCategory_____ * _Nullable)category __attribute__((swift_name("doCopy(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))); + +/** + * Business profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** General about text for the business */ +@property (readonly) NSString * _Nullable about __attribute__((swift_name("about"))); +@property (readonly) KASCBusinessCategory_____ * _Nullable category __attribute__((swift_name("category"))); + +/** Whether this is a conglomerate business. Conglomerate businesses are umbrellas for multiple business' in Kangaroo */ +@property (readonly) NSString * _Nullable conglomerate __attribute__((swift_name("conglomerate"))); +@property (readonly) KASCImage___________ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique business ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage___________ * _Nullable logo __attribute__((swift_name("logo"))); +@property (readonly) KASCImage___________ * _Nullable logoTransparentBackground __attribute__((swift_name("logoTransparentBackground"))); + +/** The manner in which this business rewards its customers. This can be by purchase amount of by visit to the store */ +@property (readonly) NSString * _Nullable loyaltyType __attribute__((swift_name("loyaltyType"))); + +/** The name of this business */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** Whether this is a white label business. White label business' don't appear in the Kangaroo Mobile Customer app, as they usually have their own app. */ +@property (readonly) NSString * _Nullable whiteLabel __attribute__((swift_name("whiteLabel"))); +@end + + +/** + * Business profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData_____.Companion"))) +@interface KASCBusinessData_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessData_____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Business profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image___________"))) +@interface KASCImage___________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage___________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage___________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image___________.Companion"))) +@interface KASCImage___________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage___________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get the public settings of a business. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBusinessSettingsApi"))) +@interface KASCPublicBusinessSettingsApi : KASCApi + +/** + * Get the public settings of a business. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get the public settings of a business. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCPublicBusinessSettingsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get the public settings of a business. + */ +- (KASCCFlow *> *)getPublicBusinessSettings __attribute__((swift_name("getPublicBusinessSettings()"))); +@property (readonly) KASCCFlow *> *publicBusinessSettingsState __attribute__((swift_name("publicBusinessSettingsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBusinessSettingsApi.Companion"))) +@interface KASCPublicBusinessSettingsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicBusinessSettingsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory______"))) +@interface KASCBusinessCategory______ : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("init(name:icon:code:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessCategory______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (KASCBusinessCategory______ *)doCopyName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("doCopy(name:icon:code:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique ategory code for this category */ +@property (readonly) NSString * _Nullable code __attribute__((swift_name("code"))); + +/** Url to this category's icon */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** Name of this category */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory______.Companion"))) +@interface KASCBusinessCategory______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessCategory______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData______"))) +@interface KASCBusinessData______ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage____________ * _Nullable)logo logoTransparentBackground:(KASCImage____________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage____________ * _Nullable)coverPhoto category:(KASCBusinessCategory______ * _Nullable)category __attribute__((swift_name("init(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessData______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Business profile data + */ +- (KASCBusinessData______ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage____________ * _Nullable)logo logoTransparentBackground:(KASCImage____________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage____________ * _Nullable)coverPhoto category:(KASCBusinessCategory______ * _Nullable)category __attribute__((swift_name("doCopy(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))); + +/** + * Business profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** General about text for the business */ +@property (readonly) NSString * _Nullable about __attribute__((swift_name("about"))); +@property (readonly) KASCBusinessCategory______ * _Nullable category __attribute__((swift_name("category"))); + +/** Whether this is a conglomerate business. Conglomerate businesses are umbrellas for multiple business' in Kangaroo */ +@property (readonly) NSString * _Nullable conglomerate __attribute__((swift_name("conglomerate"))); +@property (readonly) KASCImage____________ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique business ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage____________ * _Nullable logo __attribute__((swift_name("logo"))); +@property (readonly) KASCImage____________ * _Nullable logoTransparentBackground __attribute__((swift_name("logoTransparentBackground"))); + +/** The manner in which this business rewards its customers. This can be by purchase amount of by visit to the store */ +@property (readonly) NSString * _Nullable loyaltyType __attribute__((swift_name("loyaltyType"))); + +/** The name of this business */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** Whether this is a white label business. White label business' don't appear in the Kangaroo Mobile Customer app, as they usually have their own app. */ +@property (readonly) NSString * _Nullable whiteLabel __attribute__((swift_name("whiteLabel"))); +@end + + +/** + * Business profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData______.Companion"))) +@interface KASCBusinessData______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessData______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Business profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image____________"))) +@interface KASCImage____________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage____________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage____________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image____________.Companion"))) +@interface KASCImage____________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage____________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * public settings related to the business + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBusinessSettings"))) +@interface KASCPublicBusinessSettings : KASCModel +- (instancetype)initWithData:(KASCPublicBusinessSettingsData * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCPublicBusinessSettingsCompanion *companion __attribute__((swift_name("companion"))); + +/** + * public settings related to the business + */ +- (KASCPublicBusinessSettings *)doCopyData:(KASCPublicBusinessSettingsData * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * public settings related to the business + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * public settings related to the business + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * public settings related to the business + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Details about the business public settings */ +@property (readonly) KASCPublicBusinessSettingsData * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * public settings related to the business + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBusinessSettings.Companion"))) +@interface KASCPublicBusinessSettingsCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * public settings related to the business + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicBusinessSettingsCompanion *shared __attribute__((swift_name("shared"))); + +/** + * public settings related to the business + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * business public settings data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBusinessSettingsData"))) +@interface KASCPublicBusinessSettingsData : KASCBase +- (instancetype)initWithBusiness:(KASCBusinessData______ * _Nullable)business __attribute__((swift_name("init(business:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCPublicBusinessSettingsDataCompanion *companion __attribute__((swift_name("companion"))); + +/** + * business public settings data + */ +- (KASCPublicBusinessSettingsData *)doCopyBusiness:(KASCBusinessData______ * _Nullable)business __attribute__((swift_name("doCopy(business:)"))); + +/** + * business public settings data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * business public settings data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * business public settings data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** business */ +@property (readonly) KASCBusinessData______ * _Nullable business __attribute__((swift_name("business"))); +@end + + +/** + * business public settings data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBusinessSettingsData.Companion"))) +@interface KASCPublicBusinessSettingsDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * business public settings data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicBusinessSettingsDataCompanion *shared __attribute__((swift_name("shared"))); + +/** + * business public settings data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get the last business chosen by the user in teh conglomerate feature [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GetDefaultBusinessIdApi"))) +@interface KASCGetDefaultBusinessIdApi : KASCApi + +/** + * Get the last business chosen by the user in teh conglomerate feature [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get the last business chosen by the user in teh conglomerate feature [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCGetDefaultBusinessIdApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get the last business chosen by the user in teh conglomerate feature + */ +- (KASCCFlow *> *)getDefaultBusinessIdBusinessId:(NSString *)businessId __attribute__((swift_name("getDefaultBusinessId(businessId:)"))); +@property (readonly) KASCCFlow *> *getDefaultBusinessIdState __attribute__((swift_name("getDefaultBusinessIdState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GetDefaultBusinessIdApi.Companion"))) +@interface KASCGetDefaultBusinessIdApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGetDefaultBusinessIdApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Default business chosen by the user + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("DefaultBusiness_"))) +@interface KASCDefaultBusiness_ : KASCModel +- (instancetype)initWithData:(KASCDefaultBusinessData_ * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCDefaultBusiness_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Default business chosen by the user + */ +- (KASCDefaultBusiness_ *)doCopyData:(KASCDefaultBusinessData_ * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * Default business chosen by the user + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Default business chosen by the user + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Default business chosen by the user + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Details about the default business */ +@property (readonly) KASCDefaultBusinessData_ * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * Default business chosen by the user + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("DefaultBusiness_.Companion"))) +@interface KASCDefaultBusiness_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Default business chosen by the user + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCDefaultBusiness_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Default business chosen by the user + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Default Business id data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("DefaultBusinessData_"))) +@interface KASCDefaultBusinessData_ : KASCBase +- (instancetype)initWithDefaultBranchId:(NSString * _Nullable)defaultBranchId defaultBusinessId:(NSString * _Nullable)defaultBusinessId __attribute__((swift_name("init(defaultBranchId:defaultBusinessId:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCDefaultBusinessData_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Default Business id data + */ +- (KASCDefaultBusinessData_ *)doCopyDefaultBranchId:(NSString * _Nullable)defaultBranchId defaultBusinessId:(NSString * _Nullable)defaultBusinessId __attribute__((swift_name("doCopy(defaultBranchId:defaultBusinessId:)"))); + +/** + * Default Business id data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Default Business id data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Default Business id data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique branch Id */ +@property (readonly) NSString * _Nullable defaultBranchId __attribute__((swift_name("defaultBranchId"))); + +/** Unique business Id */ +@property (readonly) NSString * _Nullable defaultBusinessId __attribute__((swift_name("defaultBusinessId"))); +@end + + +/** + * Default Business id data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("DefaultBusinessData_.Companion"))) +@interface KASCDefaultBusinessData_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Default Business id data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCDefaultBusinessData_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Default Business id data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of frequent buyer programs for this business [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessFrequentBuyerProgramsApi"))) +@interface KASCUserBusinessFrequentBuyerProgramsApi : KASCApi + +/** + * Get a list of frequent buyer programs for this business [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of frequent buyer programs for this business [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserBusinessFrequentBuyerProgramsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of frequent buyer programs for this business + */ +- (KASCCFlow *> *)getUserBusinessFrequentBuyerProgramsBusinessId:(NSString *)businessId __attribute__((swift_name("getUserBusinessFrequentBuyerPrograms(businessId:)"))); +@property (readonly) KASCCFlow *> *userBusinessFrequentBuyerProgramsState __attribute__((swift_name("userBusinessFrequentBuyerProgramsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessFrequentBuyerProgramsApi.Companion"))) +@interface KASCUserBusinessFrequentBuyerProgramsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessFrequentBuyerProgramsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramModel"))) +@interface KASCFrequentBuyerProgramModel : KASCModel +- (instancetype)initWithId:(KASCLong * _Nullable)id enabled:(KASCBoolean * _Nullable)enabled title:(NSString * _Nullable)title buyUnits:(KASCLong * _Nullable)buyUnits getUnits:(KASCLong * _Nullable)getUnits resetInterval:(KASCLong * _Nullable)resetInterval createdAt:(NSString * _Nullable)createdAt __attribute__((swift_name("init(id:enabled:title:buyUnits:getUnits:resetInterval:createdAt:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCFrequentBuyerProgramModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCFrequentBuyerProgramModel *)doCopyId:(KASCLong * _Nullable)id enabled:(KASCBoolean * _Nullable)enabled title:(NSString * _Nullable)title buyUnits:(KASCLong * _Nullable)buyUnits getUnits:(KASCLong * _Nullable)getUnits resetInterval:(KASCLong * _Nullable)resetInterval createdAt:(NSString * _Nullable)createdAt __attribute__((swift_name("doCopy(id:enabled:title:buyUnits:getUnits:resetInterval:createdAt:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCLong * _Nullable buyUnits __attribute__((swift_name("buyUnits"))); +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); +@property (readonly) KASCLong * _Nullable getUnits __attribute__((swift_name("getUnits"))); +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCLong * _Nullable resetInterval __attribute__((swift_name("resetInterval"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramModel.Companion"))) +@interface KASCFrequentBuyerProgramModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCFrequentBuyerProgramModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramsIncluded"))) +@interface KASCFrequentBuyerProgramsIncluded : KASCBase +- (instancetype)initWithFrequentBuyerPrograms:(NSArray * _Nullable)frequentBuyerPrograms __attribute__((swift_name("init(frequentBuyerPrograms:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCFrequentBuyerProgramsIncludedCompanion *companion __attribute__((swift_name("companion"))); +- (KASCFrequentBuyerProgramsIncluded *)doCopyFrequentBuyerPrograms:(NSArray * _Nullable)frequentBuyerPrograms __attribute__((swift_name("doCopy(frequentBuyerPrograms:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable frequentBuyerPrograms __attribute__((swift_name("frequentBuyerPrograms"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramsIncluded.Companion"))) +@interface KASCFrequentBuyerProgramsIncludedCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCFrequentBuyerProgramsIncludedCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Frequent buyer programs for this business + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramsModel"))) +@interface KASCFrequentBuyerProgramsModel : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel______________ * _Nullable)data included:(KASCFrequentBuyerProgramsIncluded * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCFrequentBuyerProgramsModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Frequent buyer programs for this business + */ +- (KASCFrequentBuyerProgramsModel *)doCopyData:(KASCUserProfileDataModel______________ * _Nullable)data included:(KASCFrequentBuyerProgramsIncluded * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * Frequent buyer programs for this business + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Frequent buyer programs for this business + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Frequent buyer programs for this business + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user data */ +@property (readonly) KASCUserProfileDataModel______________ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains frequent buyer programs */ +@property (readonly) KASCFrequentBuyerProgramsIncluded * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * Frequent buyer programs for this business + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramsModel.Companion"))) +@interface KASCFrequentBuyerProgramsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Frequent buyer programs for this business + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCFrequentBuyerProgramsModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Frequent buyer programs for this business + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel______________"))) +@interface KASCUserProfileDataModel______________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel______________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel______________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel______________.Companion"))) +@interface KASCUserProfileDataModel______________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel______________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of branches available to all users. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBranchesApi"))) +@interface KASCPublicBranchesApi : KASCApi + +/** + * Get a list of branches available to all users. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of branches available to all users. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCPublicBranchesApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of branches available to all users. + */ +- (KASCCFlow *> *)getPublicBranches __attribute__((swift_name("getPublicBranches()"))); +@property (readonly) KASCCFlow *> *publicBranchesState __attribute__((swift_name("publicBranchesState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBranchesApi.Companion"))) +@interface KASCPublicBranchesApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicBranchesApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Branch__"))) +@interface KASCBranch__ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name webSite:(NSString * _Nullable)webSite phone:(KASCBranchPhone__ * _Nullable)phone logo:(KASCImage_____________ * _Nullable)logo coverPhoto:(KASCImage_____________ * _Nullable)coverPhoto address:(KASCBranchAddress__ * _Nullable)address __attribute__((swift_name("init(id:name:webSite:phone:logo:coverPhoto:address:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBranch__Companion *companion __attribute__((swift_name("companion"))); +- (KASCBranch__ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name webSite:(NSString * _Nullable)webSite phone:(KASCBranchPhone__ * _Nullable)phone logo:(KASCImage_____________ * _Nullable)logo coverPhoto:(KASCImage_____________ * _Nullable)coverPhoto address:(KASCBranchAddress__ * _Nullable)address __attribute__((swift_name("doCopy(id:name:webSite:phone:logo:coverPhoto:address:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCBranchAddress__ * _Nullable address __attribute__((swift_name("address"))); +@property (readonly) KASCImage_____________ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique ID for this branch */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage_____________ * _Nullable logo __attribute__((swift_name("logo"))); + +/** The name of this branch */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@property (readonly) KASCBranchPhone__ * _Nullable phone __attribute__((swift_name("phone"))); + +/** The website for this branch */ +@property (readonly) NSString * _Nullable webSite __attribute__((swift_name("webSite"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Branch__.Companion"))) +@interface KASCBranch__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBranch__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchAddress__"))) +@interface KASCBranchAddress__ : KASCBase +- (instancetype)initWithFormatted:(NSString * _Nullable)formatted street:(NSString * _Nullable)street city:(NSString * _Nullable)city region:(NSString * _Nullable)region country:(NSString * _Nullable)country lat:(KASCFloat * _Nullable)lat long:(KASCFloat * _Nullable)long_ __attribute__((swift_name("init(formatted:street:city:region:country:lat:long:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBranchAddress__Companion *companion __attribute__((swift_name("companion"))); +- (KASCBranchAddress__ *)doCopyFormatted:(NSString * _Nullable)formatted street:(NSString * _Nullable)street city:(NSString * _Nullable)city region:(NSString * _Nullable)region country:(NSString * _Nullable)country lat:(KASCFloat * _Nullable)lat long:(KASCFloat * _Nullable)long_ __attribute__((swift_name("doCopy(formatted:street:city:region:country:lat:long:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable city __attribute__((swift_name("city"))); +@property (readonly) NSString * _Nullable country __attribute__((swift_name("country"))); +@property (readonly) NSString * _Nullable formatted __attribute__((swift_name("formatted"))); +@property (readonly) KASCFloat * _Nullable lat __attribute__((swift_name("lat"))); +@property (readonly, getter=long) KASCFloat * _Nullable long_ __attribute__((swift_name("long_"))); +@property (readonly) NSString * _Nullable region __attribute__((swift_name("region"))); +@property (readonly) NSString * _Nullable street __attribute__((swift_name("street"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchAddress__.Companion"))) +@interface KASCBranchAddress__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBranchAddress__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchPhone__"))) +@interface KASCBranchPhone__ : KASCBase +- (instancetype)initWithNumber:(NSString * _Nullable)number countryCode:(NSString * _Nullable)countryCode nationalFormat:(NSString * _Nullable)nationalFormat intlFormat:(NSString * _Nullable)intlFormat __attribute__((swift_name("init(number:countryCode:nationalFormat:intlFormat:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBranchPhone__Companion *companion __attribute__((swift_name("companion"))); +- (KASCBranchPhone__ *)doCopyNumber:(NSString * _Nullable)number countryCode:(NSString * _Nullable)countryCode nationalFormat:(NSString * _Nullable)nationalFormat intlFormat:(NSString * _Nullable)intlFormat __attribute__((swift_name("doCopy(number:countryCode:nationalFormat:intlFormat:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); +@property (readonly) NSString * _Nullable intlFormat __attribute__((swift_name("intlFormat"))); +@property (readonly) NSString * _Nullable nationalFormat __attribute__((swift_name("nationalFormat"))); +@property (readonly) NSString * _Nullable number __attribute__((swift_name("number"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchPhone__.Companion"))) +@interface KASCBranchPhone__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBranchPhone__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_____________"))) +@interface KASCImage_____________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage_____________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage_____________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_____________.Companion"))) +@interface KASCImage_____________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage_____________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBranchesModel"))) +@interface KASCPublicBranchesModel : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCPublicBranchesModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCPublicBranchesModel *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBranchesModel.Companion"))) +@interface KASCPublicBranchesModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicBranchesModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Update a users' PIN [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserPinUpdateApi"))) +@interface KASCUserPinUpdateApi : KASCApi + +/** + * Update a users' PIN [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Update a users' PIN [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserPinUpdateApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Update a users' PIN + */ +- (KASCCFlow *> *)updatePinUpdatePinRequest:(KASCUpdatePinRequest *)updatePinRequest __attribute__((swift_name("updatePin(updatePinRequest:)"))); + +/** + * Update a users' PIN + * + * This method is used by the Native artifact when dealing with object body params + */ +- (KASCCFlow *> *)updatePinMethods:(NSDictionary *)methods __attribute__((swift_name("updatePin(methods:)"))); +@property (readonly) KASCCFlow *> *userPinUpdateState __attribute__((swift_name("userPinUpdateState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserPinUpdateApi.Companion"))) +@interface KASCUserPinUpdateApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserPinUpdateApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_______________________"))) +@interface KASCLanguage_______________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_______________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_______________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_______________________.Companion"))) +@interface KASCLanguage_______________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_______________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A referral program + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram______"))) +@interface KASCReferralProgram______ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("init(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCReferralProgram______Companion *companion __attribute__((swift_name("companion"))); + +/** + * A referral program + */ +- (KASCReferralProgram______ *)doCopyId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("doCopy(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))); + +/** + * A referral program + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A referral program + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A referral program + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The minimum purchawe amount required for a succesful referral. */ +@property (readonly) KASCDouble * _Nullable condMinAmount __attribute__((swift_name("condMinAmount"))); + +/** Denotes whether this referral program is currently active. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The number of days the new customer has to sign up in order for a referral to be sucessful. */ +@property (readonly) KASCLong * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); + +/** The unique id of this referral program. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Denotes whether this referral program has enabled share links. Referral share links are links that the customer can send to prospective referrals. A User can sign up to the business through this link in order to complete the referral. */ +@property (readonly) KASCBoolean * _Nullable linkReferralEnabled __attribute__((swift_name("linkReferralEnabled"))); + +/** The number of points the new customer will earn. */ +@property (readonly) KASCLong * _Nullable refereeEarns __attribute__((swift_name("refereeEarns"))); + +/** The number of points the new customer who made the referral will earn. */ +@property (readonly) KASCLong * _Nullable refererEarns __attribute__((swift_name("refererEarns"))); + +/** A link that can be shared to prospective referrals. */ +@property (readonly) NSString * _Nullable referralLink __attribute__((swift_name("referralLink"))); +@property (readonly) NSString * _Nullable ruleName __attribute__((swift_name("ruleName"))); +@end + + +/** + * A referral program + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram______.Companion"))) +@interface KASCReferralProgram______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A referral program + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCReferralProgram______Companion *shared __attribute__((swift_name("shared"))); + +/** + * A referral program + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel_______"))) +@interface KASCTierLevel_______ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevel_______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier level. + */ +- (KASCTierLevel_______ *)doCopyId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))); + +/** + * Represents a single tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The icon of this tier level. */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** The ID for this tier. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** translation for each tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); + +/** The name of this tier level. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount of points acquired that is required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachPoints __attribute__((swift_name("reachPoints"))); + +/** The amount of money spent required to reach this tier. */ +@property (readonly) KASCFloat * _Nullable reachSpend __attribute__((swift_name("reachSpend"))); + +/** The amount of visits made to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachVisits __attribute__((swift_name("reachVisits"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable tierPerks __attribute__((swift_name("tierPerks"))); +@end + + +/** + * Represents a single tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel_______.Companion"))) +@interface KASCTierLevel_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevel_______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation_______"))) +@interface KASCTierLevelTranslation_______ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage_______________________ * _Nullable)language __attribute__((swift_name("init(languageId:name:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevelTranslation_______Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierLevelTranslation_______ *)doCopyLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage_______________________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:name:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The description of this tier level as translated. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_______________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation_______.Companion"))) +@interface KASCTierLevelTranslation_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevelTranslation_______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier perk for a tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk_______"))) +@interface KASCTierPerk_______ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerk_______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (KASCTierPerk_______ *)doCopyId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Whether this tier perk is currently enabled or disabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The ID for this tier perk. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Whether the offer this tier perk is currently attached to is expired or not. */ +@property (readonly) KASCBoolean * _Nullable isExpired __attribute__((swift_name("isExpired"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); +@property (readonly) KASCLong * _Nullable offerId __attribute__((swift_name("offerId"))); +@property (readonly) KASCLong * _Nullable punchItemId __attribute__((swift_name("punchItemId"))); + +/** The ID for the tier level this tier perk is related to. */ +@property (readonly) KASCLong * _Nullable tierId __attribute__((swift_name("tierId"))); + +/** The title of this tier perk. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + + +/** + * Represents a single tier perk for a tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk_______.Companion"))) +@interface KASCTierPerk_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier perk for a tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerk_______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation_______"))) +@interface KASCTierPerkTranslation_______ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage_______________________ * _Nullable)language __attribute__((swift_name("init(languageId:title:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerkTranslation_______Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierPerkTranslation_______ *)doCopyLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage_______________________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_______________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation_______.Companion"))) +@interface KASCTierPerkTranslation_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerkTranslation_______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress_______"))) +@interface KASCTierProgress_______ : KASCBase +- (instancetype)initWithStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("init(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierProgress_______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (KASCTierProgress_______ *)doCopyStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("doCopy(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The end date for this tier session. The tier will be reset once this date is reached. */ +@property (readonly) NSString * _Nullable endDate __attribute__((swift_name("endDate"))); + +/** The amount of spend left in the user's current tier progress. Once they have acquired this many more amount of spend, they will be moved into the next tier. */ +@property (readonly) KASCFloat * _Nullable leftAmount __attribute__((swift_name("leftAmount"))); + +/** The amount of points left in the user's current tier progress. Once they have acquired this many more amount of points, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftPoints __attribute__((swift_name("leftPoints"))); + +/** The amount of visits left in the user's current tier progress. Once they have acquired this many more amount of visits, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftVisits __attribute__((swift_name("leftVisits"))); + +/** The name of the user's next tier level. */ +@property (readonly) NSString * _Nullable nextTierLevel __attribute__((swift_name("nextTierLevel"))); + +/** The start date for this tier session. */ +@property (readonly) NSString * _Nullable startDate __attribute__((swift_name("startDate"))); + +/** The name of the user's current tier level */ +@property (readonly) NSString * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** The name of the user's current tier level. Tiers are recalculated once per day, as such \"tier_level\" may not be completely up to date. */ +@property (readonly) NSString * _Nullable tierLevelLive __attribute__((swift_name("tierLevelLive"))); + +/** The users current tier progress in their \"tier_level\". This will be a number between 0 and 1. A tier progress of 0.5 means that the user has made 50% progress in their current tier. */ +@property (readonly) KASCFloat * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); + +/** Purchase amount between start_date and end_date. */ +@property (readonly) KASCFloat * _Nullable totalAmount __attribute__((swift_name("totalAmount"))); + +/** Purchase points between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalPoints __attribute__((swift_name("totalPoints"))); + +/** Purchase visits between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalVisits __attribute__((swift_name("totalVisits"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress_______.Companion"))) +@interface KASCTierProgress_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierProgress_______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UpdatePinRequest"))) +@interface KASCUpdatePinRequest : KASCBase +- (instancetype)initWithPinCode:(NSString *)pinCode __attribute__((swift_name("init(pinCode:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUpdatePinRequestCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUpdatePinRequest *)doCopyPinCode:(NSString *)pinCode __attribute__((swift_name("doCopy(pinCode:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The new PIN */ +@property (readonly) NSString *pinCode __attribute__((swift_name("pinCode"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UpdatePinRequest.Companion"))) +@interface KASCUpdatePinRequestCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUpdatePinRequestCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile balance data. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance_______"))) +@interface KASCUserBalance_______ : KASCBase +- (instancetype)initWithPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("init(points:giftcard:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBalance_______Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile balance data. + */ +- (KASCUserBalance_______ *)doCopyPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("doCopy(points:giftcard:)"))); + +/** + * User Profile balance data. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile balance data. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile balance data. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount of store credit in the users' e-wallet. */ +@property (readonly) KASCDouble * _Nullable giftcard __attribute__((swift_name("giftcard"))); + +/** The number of points this user currently has. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + + +/** + * User Profile balance data. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance_______.Companion"))) +@interface KASCUserBalance_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile balance data. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBalance_______Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile balance data. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_______________"))) +@interface KASCUserProfileDataModel_______________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel_______________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel_______________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_______________.Companion"))) +@interface KASCUserProfileDataModel_______________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel_______________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Extra user profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude______"))) +@interface KASCUserProfileInclude______ : KASCBase +- (instancetype)initWithBalance:(KASCUserBalance_______ * _Nullable)balance tierLevel:(KASCTierLevel_______ * _Nullable)tierLevel tierProgress:(KASCTierProgress_______ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("init(balance:tierLevel:tierProgress:referralPrograms:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserProfileInclude______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Extra user profile data + */ +- (KASCUserProfileInclude______ *)doCopyBalance:(KASCUserBalance_______ * _Nullable)balance tierLevel:(KASCTierLevel_______ * _Nullable)tierLevel tierProgress:(KASCTierProgress_______ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("doCopy(balance:tierLevel:tierProgress:referralPrograms:)"))); + +/** + * Extra user profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Extra user profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Extra user profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** User Profile balance data. */ +@property (readonly) KASCUserBalance_______ * _Nullable balance __attribute__((swift_name("balance"))); + +/** A list of referral programs the user has access to. */ +@property (readonly) NSArray * _Nullable referralPrograms __attribute__((swift_name("referralPrograms"))); + +/** User's tier status. */ +@property (readonly) KASCTierLevel_______ * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** User's tier progress and status. If a user's tier status is statically fixed, this will be null as they do not progress from tier to tier. */ +@property (readonly) KASCTierProgress_______ * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); +@end + + +/** + * Extra user profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude______.Companion"))) +@interface KASCUserProfileInclude______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Extra user profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileInclude______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Extra user profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel_____"))) +@interface KASCUserProfileModel_____ : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel_______________ * _Nullable)data included:(KASCUserProfileInclude______ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileModel_____Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileModel_____ *)doCopyData:(KASCUserProfileDataModel_______________ * _Nullable)data included:(KASCUserProfileInclude______ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user profile data */ +@property (readonly) KASCUserProfileDataModel_______________ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains user balance data */ +@property (readonly) KASCUserProfileInclude______ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel_____.Companion"))) +@interface KASCUserProfileModel_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileModel_____Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Send user Push notification token [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PushTokenRegistrationApi"))) +@interface KASCPushTokenRegistrationApi : KASCApi + +/** + * Send user Push notification token [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Send user Push notification token [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCPushTokenRegistrationApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Send user Push notification token + */ +- (KASCCFlow *> *)registerPushTokenAndroidDeviceToken:(NSString * _Nullable)androidDeviceToken iosDeviceToken:(NSString * _Nullable)iosDeviceToken __attribute__((swift_name("registerPushToken(androidDeviceToken:iosDeviceToken:)"))); +@property (readonly) KASCCFlow *> *pushTokenRegistrationState __attribute__((swift_name("pushTokenRegistrationState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PushTokenRegistrationApi.Companion"))) +@interface KASCPushTokenRegistrationApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPushTokenRegistrationApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language________________________"))) +@interface KASCLanguage________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language________________________.Companion"))) +@interface KASCLanguage________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A referral program + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram_______"))) +@interface KASCReferralProgram_______ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("init(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCReferralProgram_______Companion *companion __attribute__((swift_name("companion"))); + +/** + * A referral program + */ +- (KASCReferralProgram_______ *)doCopyId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("doCopy(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))); + +/** + * A referral program + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A referral program + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A referral program + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The minimum purchawe amount required for a succesful referral. */ +@property (readonly) KASCDouble * _Nullable condMinAmount __attribute__((swift_name("condMinAmount"))); + +/** Denotes whether this referral program is currently active. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The number of days the new customer has to sign up in order for a referral to be sucessful. */ +@property (readonly) KASCLong * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); + +/** The unique id of this referral program. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Denotes whether this referral program has enabled share links. Referral share links are links that the customer can send to prospective referrals. A User can sign up to the business through this link in order to complete the referral. */ +@property (readonly) KASCBoolean * _Nullable linkReferralEnabled __attribute__((swift_name("linkReferralEnabled"))); + +/** The number of points the new customer will earn. */ +@property (readonly) KASCLong * _Nullable refereeEarns __attribute__((swift_name("refereeEarns"))); + +/** The number of points the new customer who made the referral will earn. */ +@property (readonly) KASCLong * _Nullable refererEarns __attribute__((swift_name("refererEarns"))); + +/** A link that can be shared to prospective referrals. */ +@property (readonly) NSString * _Nullable referralLink __attribute__((swift_name("referralLink"))); +@property (readonly) NSString * _Nullable ruleName __attribute__((swift_name("ruleName"))); +@end + + +/** + * A referral program + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram_______.Companion"))) +@interface KASCReferralProgram_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A referral program + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCReferralProgram_______Companion *shared __attribute__((swift_name("shared"))); + +/** + * A referral program + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel________"))) +@interface KASCTierLevel________ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevel________Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier level. + */ +- (KASCTierLevel________ *)doCopyId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))); + +/** + * Represents a single tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The icon of this tier level. */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** The ID for this tier. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** translation for each tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); + +/** The name of this tier level. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount of points acquired that is required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachPoints __attribute__((swift_name("reachPoints"))); + +/** The amount of money spent required to reach this tier. */ +@property (readonly) KASCFloat * _Nullable reachSpend __attribute__((swift_name("reachSpend"))); + +/** The amount of visits made to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachVisits __attribute__((swift_name("reachVisits"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable tierPerks __attribute__((swift_name("tierPerks"))); +@end + + +/** + * Represents a single tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel________.Companion"))) +@interface KASCTierLevel________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevel________Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation________"))) +@interface KASCTierLevelTranslation________ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage________________________ * _Nullable)language __attribute__((swift_name("init(languageId:name:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevelTranslation________Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierLevelTranslation________ *)doCopyLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage________________________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:name:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The description of this tier level as translated. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation________.Companion"))) +@interface KASCTierLevelTranslation________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevelTranslation________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier perk for a tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk________"))) +@interface KASCTierPerk________ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerk________Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (KASCTierPerk________ *)doCopyId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Whether this tier perk is currently enabled or disabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The ID for this tier perk. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Whether the offer this tier perk is currently attached to is expired or not. */ +@property (readonly) KASCBoolean * _Nullable isExpired __attribute__((swift_name("isExpired"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); +@property (readonly) KASCLong * _Nullable offerId __attribute__((swift_name("offerId"))); +@property (readonly) KASCLong * _Nullable punchItemId __attribute__((swift_name("punchItemId"))); + +/** The ID for the tier level this tier perk is related to. */ +@property (readonly) KASCLong * _Nullable tierId __attribute__((swift_name("tierId"))); + +/** The title of this tier perk. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + + +/** + * Represents a single tier perk for a tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk________.Companion"))) +@interface KASCTierPerk________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier perk for a tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerk________Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation________"))) +@interface KASCTierPerkTranslation________ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage________________________ * _Nullable)language __attribute__((swift_name("init(languageId:title:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerkTranslation________Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierPerkTranslation________ *)doCopyLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage________________________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation________.Companion"))) +@interface KASCTierPerkTranslation________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerkTranslation________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress________"))) +@interface KASCTierProgress________ : KASCBase +- (instancetype)initWithStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("init(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierProgress________Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (KASCTierProgress________ *)doCopyStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("doCopy(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The end date for this tier session. The tier will be reset once this date is reached. */ +@property (readonly) NSString * _Nullable endDate __attribute__((swift_name("endDate"))); + +/** The amount of spend left in the user's current tier progress. Once they have acquired this many more amount of spend, they will be moved into the next tier. */ +@property (readonly) KASCFloat * _Nullable leftAmount __attribute__((swift_name("leftAmount"))); + +/** The amount of points left in the user's current tier progress. Once they have acquired this many more amount of points, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftPoints __attribute__((swift_name("leftPoints"))); + +/** The amount of visits left in the user's current tier progress. Once they have acquired this many more amount of visits, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftVisits __attribute__((swift_name("leftVisits"))); + +/** The name of the user's next tier level. */ +@property (readonly) NSString * _Nullable nextTierLevel __attribute__((swift_name("nextTierLevel"))); + +/** The start date for this tier session. */ +@property (readonly) NSString * _Nullable startDate __attribute__((swift_name("startDate"))); + +/** The name of the user's current tier level */ +@property (readonly) NSString * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** The name of the user's current tier level. Tiers are recalculated once per day, as such \"tier_level\" may not be completely up to date. */ +@property (readonly) NSString * _Nullable tierLevelLive __attribute__((swift_name("tierLevelLive"))); + +/** The users current tier progress in their \"tier_level\". This will be a number between 0 and 1. A tier progress of 0.5 means that the user has made 50% progress in their current tier. */ +@property (readonly) KASCFloat * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); + +/** Purchase amount between start_date and end_date. */ +@property (readonly) KASCFloat * _Nullable totalAmount __attribute__((swift_name("totalAmount"))); + +/** Purchase points between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalPoints __attribute__((swift_name("totalPoints"))); + +/** Purchase visits between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalVisits __attribute__((swift_name("totalVisits"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress________.Companion"))) +@interface KASCTierProgress________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierProgress________Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile balance data. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance________"))) +@interface KASCUserBalance________ : KASCBase +- (instancetype)initWithPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("init(points:giftcard:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBalance________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile balance data. + */ +- (KASCUserBalance________ *)doCopyPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("doCopy(points:giftcard:)"))); + +/** + * User Profile balance data. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile balance data. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile balance data. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount of store credit in the users' e-wallet. */ +@property (readonly) KASCDouble * _Nullable giftcard __attribute__((swift_name("giftcard"))); + +/** The number of points this user currently has. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + + +/** + * User Profile balance data. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance________.Companion"))) +@interface KASCUserBalance________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile balance data. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBalance________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile balance data. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel________________"))) +@interface KASCUserProfileDataModel________________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel________________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel________________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel________________.Companion"))) +@interface KASCUserProfileDataModel________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel________________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Extra user profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude_______"))) +@interface KASCUserProfileInclude_______ : KASCBase +- (instancetype)initWithBalance:(KASCUserBalance________ * _Nullable)balance tierLevel:(KASCTierLevel________ * _Nullable)tierLevel tierProgress:(KASCTierProgress________ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("init(balance:tierLevel:tierProgress:referralPrograms:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserProfileInclude_______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Extra user profile data + */ +- (KASCUserProfileInclude_______ *)doCopyBalance:(KASCUserBalance________ * _Nullable)balance tierLevel:(KASCTierLevel________ * _Nullable)tierLevel tierProgress:(KASCTierProgress________ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("doCopy(balance:tierLevel:tierProgress:referralPrograms:)"))); + +/** + * Extra user profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Extra user profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Extra user profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** User Profile balance data. */ +@property (readonly) KASCUserBalance________ * _Nullable balance __attribute__((swift_name("balance"))); + +/** A list of referral programs the user has access to. */ +@property (readonly) NSArray * _Nullable referralPrograms __attribute__((swift_name("referralPrograms"))); + +/** User's tier status. */ +@property (readonly) KASCTierLevel________ * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** User's tier progress and status. If a user's tier status is statically fixed, this will be null as they do not progress from tier to tier. */ +@property (readonly) KASCTierProgress________ * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); +@end + + +/** + * Extra user profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude_______.Companion"))) +@interface KASCUserProfileInclude_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Extra user profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileInclude_______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Extra user profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel______"))) +@interface KASCUserProfileModel______ : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel________________ * _Nullable)data included:(KASCUserProfileInclude_______ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileModel______Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileModel______ *)doCopyData:(KASCUserProfileDataModel________________ * _Nullable)data included:(KASCUserProfileInclude_______ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user profile data */ +@property (readonly) KASCUserProfileDataModel________________ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains user balance data */ +@property (readonly) KASCUserProfileInclude_______ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel______.Companion"))) +@interface KASCUserProfileModel______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileModel______Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of offers available to this user by specific business. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessOffersApi"))) +@interface KASCUserBusinessOffersApi : KASCApi + +/** + * Get a list of offers available to this user by specific business. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of offers available to this user by specific business. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserBusinessOffersApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of offers available to this user by specific business. + */ +- (KASCCFlow *> *)getUserBusinessOffersBusinessId:(NSString *)businessId __attribute__((swift_name("getUserBusinessOffers(businessId:)"))); +@property (readonly) KASCCFlow *> *userBusinessOffersState __attribute__((swift_name("userBusinessOffersState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessOffersApi.Companion"))) +@interface KASCUserBusinessOffersApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessOffersApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory_______"))) +@interface KASCBusinessCategory_______ : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("init(name:icon:code:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessCategory_______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (KASCBusinessCategory_______ *)doCopyName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("doCopy(name:icon:code:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique ategory code for this category */ +@property (readonly) NSString * _Nullable code __attribute__((swift_name("code"))); + +/** Url to this category's icon */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** Name of this category */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory_______.Companion"))) +@interface KASCBusinessCategory_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessCategory_______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData_______"))) +@interface KASCBusinessData_______ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage______________ * _Nullable)logo logoTransparentBackground:(KASCImage______________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage______________ * _Nullable)coverPhoto category:(KASCBusinessCategory_______ * _Nullable)category __attribute__((swift_name("init(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessData_______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Business profile data + */ +- (KASCBusinessData_______ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage______________ * _Nullable)logo logoTransparentBackground:(KASCImage______________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage______________ * _Nullable)coverPhoto category:(KASCBusinessCategory_______ * _Nullable)category __attribute__((swift_name("doCopy(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))); + +/** + * Business profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** General about text for the business */ +@property (readonly) NSString * _Nullable about __attribute__((swift_name("about"))); +@property (readonly) KASCBusinessCategory_______ * _Nullable category __attribute__((swift_name("category"))); + +/** Whether this is a conglomerate business. Conglomerate businesses are umbrellas for multiple business' in Kangaroo */ +@property (readonly) NSString * _Nullable conglomerate __attribute__((swift_name("conglomerate"))); +@property (readonly) KASCImage______________ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique business ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage______________ * _Nullable logo __attribute__((swift_name("logo"))); +@property (readonly) KASCImage______________ * _Nullable logoTransparentBackground __attribute__((swift_name("logoTransparentBackground"))); + +/** The manner in which this business rewards its customers. This can be by purchase amount of by visit to the store */ +@property (readonly) NSString * _Nullable loyaltyType __attribute__((swift_name("loyaltyType"))); + +/** The name of this business */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** Whether this is a white label business. White label business' don't appear in the Kangaroo Mobile Customer app, as they usually have their own app. */ +@property (readonly) NSString * _Nullable whiteLabel __attribute__((swift_name("whiteLabel"))); +@end + + +/** + * Business profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData_______.Companion"))) +@interface KASCBusinessData_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessData_______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Business profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image______________"))) +@interface KASCImage______________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage______________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage______________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image______________.Companion"))) +@interface KASCImage______________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage______________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_________________________"))) +@interface KASCLanguage_________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_________________________.Companion"))) +@interface KASCLanguage_________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction____"))) +@interface KASCOfferAction____ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferAction____Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferAction____ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction____.Companion"))) +@interface KASCOfferAction____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferAction____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel____"))) +@interface KASCOfferModel____ : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCOfferModel____Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferModel____ *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this offer. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** Whether this offer must be claimed on a mobile app before being used in store. */ +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The offer description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this offer. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isCouponRedeemed __attribute__((swift_name("isCouponRedeemed"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this offer. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** The maximum purchase amount for this offer to be applied. */ +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); + +/** The minimum purchase amount for this offer to be applied */ +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); + +/** The multiplication factor of this offer. This only applies to Point Multiplier offers. */ +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this offer ever expires or not. If false, this offer is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this offer into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); + +/** The amount of points required for this offer to be applied. Only used for Convertible Coupons */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this offer */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this offer. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The offer title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This can be a free product, dollar based discount, percentage based discount, point multiplier, bonus points, and free shipping. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel____.Companion"))) +@interface KASCOfferModel____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferModel____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this offer. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation____"))) +@interface KASCOfferTranslation____ : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage_________________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferTranslation____Companion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this offer. + */ +- (KASCOfferTranslation____ *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage_________________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))); + +/** + * A language translation of this offer. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this offer. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this offer. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** where is this coupon available at. */ +@property (readonly) NSString * _Nullable couponAvailableAt __attribute__((swift_name("couponAvailableAt"))); + +/** The translated coupon description. */ +@property (readonly) NSString * _Nullable couponDescription __attribute__((swift_name("couponDescription"))); + +/** The language appropriate link of this coupon. */ +@property (readonly) NSString * _Nullable couponLink __attribute__((swift_name("couponLink"))); + +/** The translated coupon terms and conditions. */ +@property (readonly) NSString * _Nullable couponTermsConditions __attribute__((swift_name("couponTermsConditions"))); + +/** The translated coupon title. */ +@property (readonly) NSString * _Nullable couponTitle __attribute__((swift_name("couponTitle"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated offer description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this offer. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated offer terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated offer title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this offer. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation____.Companion"))) +@interface KASCOfferTranslation____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this offer. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferTranslation____Companion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this offer. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessOffersIncluded"))) +@interface KASCUserBusinessOffersIncluded : KASCBase +- (instancetype)initWithOffers:(NSArray * _Nullable)offers __attribute__((swift_name("init(offers:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBusinessOffersIncludedCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserBusinessOffersIncluded *)doCopyOffers:(NSArray * _Nullable)offers __attribute__((swift_name("doCopy(offers:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable offers __attribute__((swift_name("offers"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessOffersIncluded.Companion"))) +@interface KASCUserBusinessOffersIncludedCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessOffersIncludedCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessOffersModel"))) +@interface KASCUserBusinessOffersModel : KASCModel +- (instancetype)initWithData:(KASCBusinessData_______ *)data included:(KASCUserBusinessOffersIncluded * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserBusinessOffersModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserBusinessOffersModel *)doCopyData:(KASCBusinessData_______ *)data included:(KASCUserBusinessOffersIncluded * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains business data */ +@property (readonly) KASCBusinessData_______ *data __attribute__((swift_name("data"))); + +/** Contains all offers items */ +@property (readonly) KASCUserBusinessOffersIncluded * _Nullable included __attribute__((swift_name("included"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessOffersModel.Companion"))) +@interface KASCUserBusinessOffersModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessOffersModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Acquires public business banners. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBannersApi"))) +@interface KASCPublicBannersApi : KASCApi + +/** + * Acquires public business banners. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Acquires public business banners. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCPublicBannersApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Acquires public business banners. + */ +- (KASCCFlow *> *)getPublicBanners __attribute__((swift_name("getPublicBanners()"))); +@property (readonly) KASCCFlow *> *publicBannersState __attribute__((swift_name("publicBannersState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBannersApi.Companion"))) +@interface KASCPublicBannersApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicBannersApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * A business banner. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Banner__"))) +@interface KASCBanner__ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id type:(KASCInt * _Nullable)type imagePath:(NSString * _Nullable)imagePath link:(NSString * _Nullable)link createdAt:(NSString * _Nullable)createdAt publishedAt:(NSString * _Nullable)publishedAt expiresAt:(NSString * _Nullable)expiresAt language:(KASCLanguage__________________________ * _Nullable)language __attribute__((swift_name("init(id:type:imagePath:link:createdAt:publishedAt:expiresAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBanner__Companion *companion __attribute__((swift_name("companion"))); + +/** + * A business banner. + */ +- (KASCBanner__ *)doCopyId:(KASCLong * _Nullable)id type:(KASCInt * _Nullable)type imagePath:(NSString * _Nullable)imagePath link:(NSString * _Nullable)link createdAt:(NSString * _Nullable)createdAt publishedAt:(NSString * _Nullable)publishedAt expiresAt:(NSString * _Nullable)expiresAt language:(KASCLanguage__________________________ * _Nullable)language __attribute__((swift_name("doCopy(id:type:imagePath:link:createdAt:publishedAt:expiresAt:language:)"))); + +/** + * A business banner. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A business banner. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A business banner. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); + +/** Unique banner id. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable imagePath __attribute__((swift_name("imagePath"))); +@property (readonly) KASCLanguage__________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable publishedAt __attribute__((swift_name("publishedAt"))); + +/** The banner type. */ +@property (readonly) KASCInt * _Nullable type __attribute__((swift_name("type"))); +@end + + +/** + * A business banner. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Banner__.Companion"))) +@interface KASCBanner__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A business banner. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBanner__Companion *shared __attribute__((swift_name("shared"))); + +/** + * A business banner. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business banners. Used to display promotional material. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BannersModel_"))) +@interface KASCBannersModel_ : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCBannersModel_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Business banners. Used to display promotional material. + */ +- (KASCBannersModel_ *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * Business banners. Used to display promotional material. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business banners. Used to display promotional material. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business banners. Used to display promotional material. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * Business banners. Used to display promotional material. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BannersModel_.Companion"))) +@interface KASCBannersModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business banners. Used to display promotional material. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBannersModel_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Business banners. Used to display promotional material. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language__________________________"))) +@interface KASCLanguage__________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage__________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage__________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language__________________________.Companion"))) +@interface KASCLanguage__________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage__________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Update a users notification settings. This will enable or disable push, sms, and or email notifications from the selected business. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UpdateNotificationPreferencesApi"))) +@interface KASCUpdateNotificationPreferencesApi : KASCApi + +/** + * Update a users notification settings. This will enable or disable push, sms, and or email notifications from the selected business. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Update a users notification settings. This will enable or disable push, sms, and or email notifications from the selected business. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUpdateNotificationPreferencesApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Update a users notification settings. This will enable or disable push, sms, and or email notifications from the selected business. + */ +- (KASCCFlow *> *)updateNotificationPreferencesNotificationPreferencesRequest:(NSArray *)notificationPreferencesRequest __attribute__((swift_name("updateNotificationPreferences(notificationPreferencesRequest:)"))); + +/** + * Update a users notification settings. This will enable or disable push, sms, and or email notifications from the selected business. + * + * This method is used by the Native artifact when dealing with object body params + */ +- (KASCCFlow *> *)updateNotificationPreferencesMethods:(NSDictionary *)methods __attribute__((swift_name("updateNotificationPreferences(methods:)"))); +@property (readonly) KASCCFlow *> *updateNotificationPreferencesState __attribute__((swift_name("updateNotificationPreferencesState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UpdateNotificationPreferencesApi.Companion"))) +@interface KASCUpdateNotificationPreferencesApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUpdateNotificationPreferencesApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * The business who these settings this affect. This is not required when updating notification settings. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationBusinessPayload__"))) +@interface KASCNotificationBusinessPayload__ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name __attribute__((swift_name("init(id:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCNotificationBusinessPayload__Companion *companion __attribute__((swift_name("companion"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (KASCNotificationBusinessPayload__ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:name:)"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationBusinessPayload__.Companion"))) +@interface KASCNotificationBusinessPayload__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCNotificationBusinessPayload__Companion *shared __attribute__((swift_name("shared"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsData__"))) +@interface KASCNotificationSettingsData__ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id business:(KASCNotificationBusinessPayload__ * _Nullable)business allowEmail:(KASCBoolean * _Nullable)allowEmail allowSms:(KASCBoolean * _Nullable)allowSms allowPush:(KASCBoolean * _Nullable)allowPush __attribute__((swift_name("init(id:business:allowEmail:allowSms:allowPush:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCNotificationSettingsData__Companion *companion __attribute__((swift_name("companion"))); +- (KASCNotificationSettingsData__ *)doCopyId:(NSString * _Nullable)id business:(KASCNotificationBusinessPayload__ * _Nullable)business allowEmail:(KASCBoolean * _Nullable)allowEmail allowSms:(KASCBoolean * _Nullable)allowSms allowPush:(KASCBoolean * _Nullable)allowPush __attribute__((swift_name("doCopy(id:business:allowEmail:allowSms:allowPush:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCBoolean * _Nullable allowEmail __attribute__((swift_name("allowEmail"))); +@property (readonly) KASCBoolean * _Nullable allowPush __attribute__((swift_name("allowPush"))); +@property (readonly) KASCBoolean * _Nullable allowSms __attribute__((swift_name("allowSms"))); +@property (readonly) KASCNotificationBusinessPayload__ * _Nullable business __attribute__((swift_name("business"))); + +/** The notification settings id. This is not required when updating notification settings. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsData__.Companion"))) +@interface KASCNotificationSettingsData__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCNotificationSettingsData__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsModel__"))) +@interface KASCNotificationSettingsModel__ : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCNotificationSettingsModel__Companion *companion __attribute__((swift_name("companion"))); +- (KASCNotificationSettingsModel__ *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsModel__.Companion"))) +@interface KASCNotificationSettingsModel__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCNotificationSettingsModel__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get user products list by specific business [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessProductsApi"))) +@interface KASCUserBusinessProductsApi : KASCApi + +/** + * Get user products list by specific business [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get user products list by specific business [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserBusinessProductsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get user products list by specific business + */ +- (KASCCFlow *> *)getUserBusinessProductsBusinessId:(NSString *)businessId __attribute__((swift_name("getUserBusinessProducts(businessId:)"))); +@property (readonly) KASCCFlow *> *userBusinessProductsState __attribute__((swift_name("userBusinessProductsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessProductsApi.Companion"))) +@interface KASCUserBusinessProductsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessProductsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images_____"))) +@interface KASCImages_____ : KASCBase +- (instancetype)initWithPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(path:large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImages_____Companion *companion __attribute__((swift_name("companion"))); +- (KASCImages_____ *)doCopyPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(path:large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable path __attribute__((swift_name("path"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images_____.Companion"))) +@interface KASCImages_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImages_____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language___________________________"))) +@interface KASCLanguage___________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage___________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage___________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language___________________________.Companion"))) +@interface KASCLanguage___________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage___________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages_____"))) +@interface KASCLanguages_____ : KASCBase +- (instancetype)initWithLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage___________________________ * _Nullable)language __attribute__((swift_name("init(languageId:title:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguages_____Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguages_____ *)doCopyLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage___________________________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCLanguage___________________________ * _Nullable language __attribute__((swift_name("language"))); +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages_____.Companion"))) +@interface KASCLanguages_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguages_____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product_____"))) +@interface KASCProduct_____ : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("init(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCProduct_____Companion *companion __attribute__((swift_name("companion"))); +- (KASCProduct_____ *)doCopyId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("doCopy(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCFloat * _Nullable actualPrice __attribute__((swift_name("actualPrice"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) NSArray * _Nullable productLanguages __attribute__((swift_name("productLanguages"))); +@property (readonly) NSString * _Nullable productSku __attribute__((swift_name("productSku"))); +@property (readonly) KASCFloat * _Nullable realPrice __attribute__((swift_name("realPrice"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product_____.Companion"))) +@interface KASCProduct_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCProduct_____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProductsIncluded_"))) +@interface KASCUserProductsIncluded_ : KASCBase +- (instancetype)initWithProducts:(NSArray * _Nullable)products __attribute__((swift_name("init(products:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserProductsIncluded_Companion *companion __attribute__((swift_name("companion"))); +- (KASCUserProductsIncluded_ *)doCopyProducts:(NSArray * _Nullable)products __attribute__((swift_name("doCopy(products:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable products __attribute__((swift_name("products"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProductsIncluded_.Companion"))) +@interface KASCUserProductsIncluded_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProductsIncluded_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Product model class containing user product list + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProductsModel_"))) +@interface KASCUserProductsModel_ : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel_________________ * _Nullable)data included:(KASCUserProductsIncluded_ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProductsModel_Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Product model class containing user product list + */ +- (KASCUserProductsModel_ *)doCopyData:(KASCUserProfileDataModel_________________ * _Nullable)data included:(KASCUserProductsIncluded_ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Product model class containing user product list + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Product model class containing user product list + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Product model class containing user product list + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user data */ +@property (readonly) KASCUserProfileDataModel_________________ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains products available to this user */ +@property (readonly) KASCUserProductsIncluded_ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Product model class containing user product list + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProductsModel_.Companion"))) +@interface KASCUserProductsModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Product model class containing user product list + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProductsModel_Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Product model class containing user product list + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_________________"))) +@interface KASCUserProfileDataModel_________________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel_________________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel_________________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_________________.Companion"))) +@interface KASCUserProfileDataModel_________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel_________________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of used coupons for this user. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserUsedCouponsApi"))) +@interface KASCUserUsedCouponsApi : KASCApi + +/** + * Get a list of used coupons for this user. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of used coupons for this user. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserUsedCouponsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of used coupons for this user. + */ +- (KASCCFlow *> *)getUserUsedCoupons __attribute__((swift_name("getUserUsedCoupons()"))); +@property (readonly) KASCCFlow *> *userUsedCouponsState __attribute__((swift_name("userUsedCouponsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserUsedCouponsApi.Companion"))) +@interface KASCUserUsedCouponsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserUsedCouponsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CouponModel_"))) +@interface KASCCouponModel_ : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description termsConditions:(NSString * _Nullable)termsConditions qrcode:(NSString * _Nullable)qrcode couponLocked:(KASCBoolean * _Nullable)couponLocked couponRedeemed:(KASCBoolean * _Nullable)couponRedeemed couponType:(NSString * _Nullable)couponType expiresAt:(NSString * _Nullable)expiresAt offer:(KASCOfferModel_____ * _Nullable)offer __attribute__((swift_name("init(id:title:description:termsConditions:qrcode:couponLocked:couponRedeemed:couponType:expiresAt:offer:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCCouponModel_Companion *companion __attribute__((swift_name("companion"))); +- (KASCCouponModel_ *)doCopyId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description termsConditions:(NSString * _Nullable)termsConditions qrcode:(NSString * _Nullable)qrcode couponLocked:(KASCBoolean * _Nullable)couponLocked couponRedeemed:(KASCBoolean * _Nullable)couponRedeemed couponType:(NSString * _Nullable)couponType expiresAt:(NSString * _Nullable)expiresAt offer:(KASCOfferModel_____ * _Nullable)offer __attribute__((swift_name("doCopy(id:title:description:termsConditions:qrcode:couponLocked:couponRedeemed:couponType:expiresAt:offer:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCBoolean * _Nullable couponLocked __attribute__((swift_name("couponLocked"))); +@property (readonly) KASCBoolean * _Nullable couponRedeemed __attribute__((swift_name("couponRedeemed"))); +@property (readonly) NSString * _Nullable couponType __attribute__((swift_name("couponType"))); + +/** The coupon description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); + +/** A unique ID identifying this coupon */ +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCOfferModel_____ * _Nullable offer __attribute__((swift_name("offer"))); +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** The terms and conditions attached to this coupon. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The coupon title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CouponModel_.Companion"))) +@interface KASCCouponModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCouponModel_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_______________"))) +@interface KASCImage_______________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage_______________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage_______________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_______________.Companion"))) +@interface KASCImage_______________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage_______________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language____________________________"))) +@interface KASCLanguage____________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage____________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage____________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language____________________________.Companion"))) +@interface KASCLanguage____________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage____________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction_____"))) +@interface KASCOfferAction_____ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferAction_____Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferAction_____ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction_____.Companion"))) +@interface KASCOfferAction_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferAction_____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel_____"))) +@interface KASCOfferModel_____ : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCOfferModel_____Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferModel_____ *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this offer. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** Whether this offer must be claimed on a mobile app before being used in store. */ +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The offer description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this offer. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isCouponRedeemed __attribute__((swift_name("isCouponRedeemed"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this offer. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** The maximum purchase amount for this offer to be applied. */ +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); + +/** The minimum purchase amount for this offer to be applied */ +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); + +/** The multiplication factor of this offer. This only applies to Point Multiplier offers. */ +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this offer ever expires or not. If false, this offer is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this offer into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); + +/** The amount of points required for this offer to be applied. Only used for Convertible Coupons */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this offer */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this offer. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The offer title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This can be a free product, dollar based discount, percentage based discount, point multiplier, bonus points, and free shipping. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel_____.Companion"))) +@interface KASCOfferModel_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferModel_____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this offer. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation_____"))) +@interface KASCOfferTranslation_____ : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage____________________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferTranslation_____Companion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this offer. + */ +- (KASCOfferTranslation_____ *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage____________________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))); + +/** + * A language translation of this offer. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this offer. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this offer. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** where is this coupon available at. */ +@property (readonly) NSString * _Nullable couponAvailableAt __attribute__((swift_name("couponAvailableAt"))); + +/** The translated coupon description. */ +@property (readonly) NSString * _Nullable couponDescription __attribute__((swift_name("couponDescription"))); + +/** The language appropriate link of this coupon. */ +@property (readonly) NSString * _Nullable couponLink __attribute__((swift_name("couponLink"))); + +/** The translated coupon terms and conditions. */ +@property (readonly) NSString * _Nullable couponTermsConditions __attribute__((swift_name("couponTermsConditions"))); + +/** The translated coupon title. */ +@property (readonly) NSString * _Nullable couponTitle __attribute__((swift_name("couponTitle"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage____________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated offer description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this offer. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated offer terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated offer title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this offer. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation_____.Companion"))) +@interface KASCOfferTranslation_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this offer. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferTranslation_____Companion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this offer. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserCouponsModel_"))) +@interface KASCUserCouponsModel_ : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserCouponsModel_Companion *companion __attribute__((swift_name("companion"))); +- (KASCUserCouponsModel_ *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains a list of all coupons available to this user */ +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserCouponsModel_.Companion"))) +@interface KASCUserCouponsModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserCouponsModel_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserAuthenticationApi"))) +@interface KASCUserAuthenticationApi : KASCApi +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserAuthenticationApiCompanion *companion __attribute__((swift_name("companion"))); +- (KASCCFlow *> *)authenticateUserUsername:(NSString *)username password:(NSString *)password __attribute__((swift_name("authenticateUser(username:password:)"))); +@property (readonly) KASCCFlow *> *userAuthenticationState __attribute__((swift_name("userAuthenticationState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserAuthenticationApi.Companion"))) +@interface KASCUserAuthenticationApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserAuthenticationApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Represents a successful user authentication request. + * @property accessToken The access token created for this session. Expires in 24 hours + * @property refreshToken The refresh token created this session. Expires in 30 days + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserAuthenticationModel"))) +@interface KASCUserAuthenticationModel : KASCModel +- (instancetype)initWithTokenType:(NSString * _Nullable)tokenType expiresIn:(KASCInt * _Nullable)expiresIn accessToken:(NSString * _Nullable)accessToken refreshToken:(NSString * _Nullable)refreshToken __attribute__((swift_name("init(tokenType:expiresIn:accessToken:refreshToken:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserAuthenticationModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a successful user authentication request. + * @property accessToken The access token created for this session. Expires in 24 hours + * @property refreshToken The refresh token created this session. Expires in 30 days + */ +- (KASCUserAuthenticationModel *)doCopyTokenType:(NSString * _Nullable)tokenType expiresIn:(KASCInt * _Nullable)expiresIn accessToken:(NSString * _Nullable)accessToken refreshToken:(NSString * _Nullable)refreshToken __attribute__((swift_name("doCopy(tokenType:expiresIn:accessToken:refreshToken:)"))); + +/** + * Represents a successful user authentication request. + * @property accessToken The access token created for this session. Expires in 24 hours + * @property refreshToken The refresh token created this session. Expires in 30 days + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a successful user authentication request. + * @property accessToken The access token created for this session. Expires in 24 hours + * @property refreshToken The refresh token created this session. Expires in 30 days + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a successful user authentication request. + * @property accessToken The access token created for this session. Expires in 24 hours + * @property refreshToken The refresh token created this session. Expires in 30 days + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable accessToken __attribute__((swift_name("accessToken"))); +@property (readonly) KASCInt * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); +@property (readonly) NSString * _Nullable refreshToken __attribute__((swift_name("refreshToken"))); +@property (readonly) NSString * _Nullable tokenType __attribute__((swift_name("tokenType"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserAuthenticationModel.Companion"))) +@interface KASCUserAuthenticationModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserAuthenticationModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@property (readonly) NSString *ACCESS_TOKEN __attribute__((swift_name("ACCESS_TOKEN"))); +@property (readonly) NSString *REFRESH_TOKEN __attribute__((swift_name("REFRESH_TOKEN"))); +@end + + +/** + * Get a list of frequent buyer programs for this business [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramsApi"))) +@interface KASCFrequentBuyerProgramsApi : KASCApi + +/** + * Get a list of frequent buyer programs for this business [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of frequent buyer programs for this business [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCFrequentBuyerProgramsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of frequent buyer programs for this business + */ +- (KASCCFlow *> *)getFrequentBuyerPrograms __attribute__((swift_name("getFrequentBuyerPrograms()"))); +@property (readonly) KASCCFlow *> *frequentBuyerProgramsState __attribute__((swift_name("frequentBuyerProgramsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramsApi.Companion"))) +@interface KASCFrequentBuyerProgramsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCFrequentBuyerProgramsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramModel_"))) +@interface KASCFrequentBuyerProgramModel_ : KASCModel +- (instancetype)initWithId:(KASCLong * _Nullable)id enabled:(KASCBoolean * _Nullable)enabled title:(NSString * _Nullable)title buyUnits:(KASCLong * _Nullable)buyUnits getUnits:(KASCLong * _Nullable)getUnits resetInterval:(KASCLong * _Nullable)resetInterval createdAt:(NSString * _Nullable)createdAt __attribute__((swift_name("init(id:enabled:title:buyUnits:getUnits:resetInterval:createdAt:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCFrequentBuyerProgramModel_Companion *companion __attribute__((swift_name("companion"))); +- (KASCFrequentBuyerProgramModel_ *)doCopyId:(KASCLong * _Nullable)id enabled:(KASCBoolean * _Nullable)enabled title:(NSString * _Nullable)title buyUnits:(KASCLong * _Nullable)buyUnits getUnits:(KASCLong * _Nullable)getUnits resetInterval:(KASCLong * _Nullable)resetInterval createdAt:(NSString * _Nullable)createdAt __attribute__((swift_name("doCopy(id:enabled:title:buyUnits:getUnits:resetInterval:createdAt:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCLong * _Nullable buyUnits __attribute__((swift_name("buyUnits"))); +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); +@property (readonly) KASCLong * _Nullable getUnits __attribute__((swift_name("getUnits"))); +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCLong * _Nullable resetInterval __attribute__((swift_name("resetInterval"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramModel_.Companion"))) +@interface KASCFrequentBuyerProgramModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCFrequentBuyerProgramModel_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramsIncluded_"))) +@interface KASCFrequentBuyerProgramsIncluded_ : KASCBase +- (instancetype)initWithFrequentBuyerPrograms:(NSArray * _Nullable)frequentBuyerPrograms __attribute__((swift_name("init(frequentBuyerPrograms:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCFrequentBuyerProgramsIncluded_Companion *companion __attribute__((swift_name("companion"))); +- (KASCFrequentBuyerProgramsIncluded_ *)doCopyFrequentBuyerPrograms:(NSArray * _Nullable)frequentBuyerPrograms __attribute__((swift_name("doCopy(frequentBuyerPrograms:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable frequentBuyerPrograms __attribute__((swift_name("frequentBuyerPrograms"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramsIncluded_.Companion"))) +@interface KASCFrequentBuyerProgramsIncluded_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCFrequentBuyerProgramsIncluded_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Frequent buyer programs for this business + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramsModel_"))) +@interface KASCFrequentBuyerProgramsModel_ : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel__________________ * _Nullable)data included:(KASCFrequentBuyerProgramsIncluded_ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCFrequentBuyerProgramsModel_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Frequent buyer programs for this business + */ +- (KASCFrequentBuyerProgramsModel_ *)doCopyData:(KASCUserProfileDataModel__________________ * _Nullable)data included:(KASCFrequentBuyerProgramsIncluded_ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * Frequent buyer programs for this business + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Frequent buyer programs for this business + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Frequent buyer programs for this business + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user data */ +@property (readonly) KASCUserProfileDataModel__________________ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains frequent buyer programs */ +@property (readonly) KASCFrequentBuyerProgramsIncluded_ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * Frequent buyer programs for this business + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramsModel_.Companion"))) +@interface KASCFrequentBuyerProgramsModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Frequent buyer programs for this business + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCFrequentBuyerProgramsModel_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Frequent buyer programs for this business + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel__________________"))) +@interface KASCUserProfileDataModel__________________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel__________________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel__________________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel__________________.Companion"))) +@interface KASCUserProfileDataModel__________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel__________________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Recall a transfer. This could be a points transfer, e-wallet transfer, or a gift card [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferRecallApi"))) +@interface KASCTransferRecallApi : KASCApi + +/** + * Recall a transfer. This could be a points transfer, e-wallet transfer, or a gift card [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Recall a transfer. This could be a points transfer, e-wallet transfer, or a gift card [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCTransferRecallApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Recall a transfer. This could be a points transfer, e-wallet transfer, or a gift card + */ +- (KASCCFlow *> *)recallTransferRecallId:(NSString *)recallId __attribute__((swift_name("recallTransfer(recallId:)"))); +@property (readonly) KASCCFlow *> *transferRecallState __attribute__((swift_name("transferRecallState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferRecallApi.Companion"))) +@interface KASCTransferRecallApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferRecallApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image________________"))) +@interface KASCImage________________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage________________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image________________.Companion"))) +@interface KASCImage________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_____________________________"))) +@interface KASCLanguage_____________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_____________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_____________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_____________________________.Companion"))) +@interface KASCLanguage_____________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_____________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction______"))) +@interface KASCOfferAction______ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferAction______Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferAction______ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction______.Companion"))) +@interface KASCOfferAction______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferAction______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel______"))) +@interface KASCOfferModel______ : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCOfferModel______Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferModel______ *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this offer. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** Whether this offer must be claimed on a mobile app before being used in store. */ +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The offer description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this offer. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isCouponRedeemed __attribute__((swift_name("isCouponRedeemed"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this offer. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** The maximum purchase amount for this offer to be applied. */ +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); + +/** The minimum purchase amount for this offer to be applied */ +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); + +/** The multiplication factor of this offer. This only applies to Point Multiplier offers. */ +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this offer ever expires or not. If false, this offer is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this offer into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); + +/** The amount of points required for this offer to be applied. Only used for Convertible Coupons */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this offer */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this offer. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The offer title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This can be a free product, dollar based discount, percentage based discount, point multiplier, bonus points, and free shipping. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel______.Companion"))) +@interface KASCOfferModel______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferModel______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this offer. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation______"))) +@interface KASCOfferTranslation______ : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage_____________________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferTranslation______Companion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this offer. + */ +- (KASCOfferTranslation______ *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage_____________________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))); + +/** + * A language translation of this offer. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this offer. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this offer. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** where is this coupon available at. */ +@property (readonly) NSString * _Nullable couponAvailableAt __attribute__((swift_name("couponAvailableAt"))); + +/** The translated coupon description. */ +@property (readonly) NSString * _Nullable couponDescription __attribute__((swift_name("couponDescription"))); + +/** The language appropriate link of this coupon. */ +@property (readonly) NSString * _Nullable couponLink __attribute__((swift_name("couponLink"))); + +/** The translated coupon terms and conditions. */ +@property (readonly) NSString * _Nullable couponTermsConditions __attribute__((swift_name("couponTermsConditions"))); + +/** The translated coupon title. */ +@property (readonly) NSString * _Nullable couponTitle __attribute__((swift_name("couponTitle"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_____________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated offer description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this offer. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated offer terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated offer title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this offer. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation______.Companion"))) +@interface KASCOfferTranslation______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this offer. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferTranslation______Companion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this offer. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Contains the result of a transfer action. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferActionResultModel_"))) +@interface KASCTransferActionResultModel_ : KASCModel +- (instancetype)initWithData:(KASCTransferMessage_ * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCTransferActionResultModel_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Contains the result of a transfer action. + */ +- (KASCTransferActionResultModel_ *)doCopyData:(KASCTransferMessage_ * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * Contains the result of a transfer action. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Contains the result of a transfer action. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Contains the result of a transfer action. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCTransferMessage_ * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * Contains the result of a transfer action. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferActionResultModel_.Companion"))) +@interface KASCTransferActionResultModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Contains the result of a transfer action. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferActionResultModel_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Contains the result of a transfer action. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessage_"))) +@interface KASCTransferMessage_ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id typeId:(KASCLong * _Nullable)typeId type:(NSString * _Nullable)type description:(NSString * _Nullable)description points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount hidden:(KASCBoolean * _Nullable)hidden createdAt:(NSString * _Nullable)createdAt offer:(KASCOfferModel______ * _Nullable)offer giftCardQueue:(KASCTransferMessageGiftCardQueue_ * _Nullable)giftCardQueue actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:typeId:type:description:points:amount:hidden:createdAt:offer:giftCardQueue:actions:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransferMessage_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (KASCTransferMessage_ *)doCopyId:(KASCLong * _Nullable)id typeId:(KASCLong * _Nullable)typeId type:(NSString * _Nullable)type description:(NSString * _Nullable)description points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount hidden:(KASCBoolean * _Nullable)hidden createdAt:(NSString * _Nullable)createdAt offer:(KASCOfferModel______ * _Nullable)offer giftCardQueue:(KASCTransferMessageGiftCardQueue_ * _Nullable)giftCardQueue actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:typeId:type:description:points:amount:hidden:createdAt:offer:giftCardQueue:actions:)"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** The amount in $ sent in this transfer. */ +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); + +/** The orignal send date of this transfer. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** The description of this transfer. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCTransferMessageGiftCardQueue_ * _Nullable giftCardQueue __attribute__((swift_name("giftCardQueue"))); +@property (readonly) KASCBoolean * _Nullable hidden __attribute__((swift_name("hidden"))); + +/** The unique ID of this transfer. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** The gift card in this transfer if applicable. Gift cards are an offer sub-type in Kangaroo. */ +@property (readonly) KASCOfferModel______ * _Nullable offer __attribute__((swift_name("offer"))); + +/** The amount of points sent in this transfer. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** A string representation of this transfer type. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); + +/** The type ID of this transfer. */ +@property (readonly) KASCLong * _Nullable typeId __attribute__((swift_name("typeId"))); +@end + + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessage_.Companion"))) +@interface KASCTransferMessage_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferMessage_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageActions_"))) +@interface KASCTransferMessageActions_ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransferMessageActions_Companion *companion __attribute__((swift_name("companion"))); +- (KASCTransferMessageActions_ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The action type. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageActions_.Companion"))) +@interface KASCTransferMessageActions_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferMessageActions_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageGiftCardQueue_"))) +@interface KASCTransferMessageGiftCardQueue_ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id enabled:(KASCBoolean * _Nullable)enabled senderName:(NSString * _Nullable)senderName recipientName:(NSString * _Nullable)recipientName emailPhone:(NSString * _Nullable)emailPhone points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount createdAt:(NSString * _Nullable)createdAt scheduledAt:(NSString * _Nullable)scheduledAt __attribute__((swift_name("init(id:enabled:senderName:recipientName:emailPhone:points:amount:createdAt:scheduledAt:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransferMessageGiftCardQueue_Companion *companion __attribute__((swift_name("companion"))); +- (KASCTransferMessageGiftCardQueue_ *)doCopyId:(KASCLong * _Nullable)id enabled:(KASCBoolean * _Nullable)enabled senderName:(NSString * _Nullable)senderName recipientName:(NSString * _Nullable)recipientName emailPhone:(NSString * _Nullable)emailPhone points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount createdAt:(NSString * _Nullable)createdAt scheduledAt:(NSString * _Nullable)scheduledAt __attribute__((swift_name("doCopy(id:enabled:senderName:recipientName:emailPhone:points:amount:createdAt:scheduledAt:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount in $ sent in this transfer. */ +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); + +/** The orignal creation date of this transfer. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** The phone number or email address that this transfer was sent to. */ +@property (readonly) NSString * _Nullable emailPhone __attribute__((swift_name("emailPhone"))); + +/** Whether this item is enabled. Usually true. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The unique ID of this gift_card_queue */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** The amount of points sent in this transfer. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The name of the recipient of this transfer. */ +@property (readonly) NSString * _Nullable recipientName __attribute__((swift_name("recipientName"))); + +/** The original scheduled delivery date of this transfer. */ +@property (readonly) NSString * _Nullable scheduledAt __attribute__((swift_name("scheduledAt"))); + +/** The name of the sender of this transfer. */ +@property (readonly) NSString * _Nullable senderName __attribute__((swift_name("senderName"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageGiftCardQueue_.Companion"))) +@interface KASCTransferMessageGiftCardQueue_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferMessageGiftCardQueue_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get this users campaign messages. Campaign messages are messages sent to this user from the business using the marketing engine. These might also be delivered by sms, email, or push notifications. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CampaignMessagesApi"))) +@interface KASCCampaignMessagesApi : KASCApi + +/** + * Get this users campaign messages. Campaign messages are messages sent to this user from the business using the marketing engine. These might also be delivered by sms, email, or push notifications. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get this users campaign messages. Campaign messages are messages sent to this user from the business using the marketing engine. These might also be delivered by sms, email, or push notifications. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCCampaignMessagesApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get this users campaign messages. Campaign messages are messages sent to this user from the business using the marketing engine. These might also be delivered by sms, email, or push notifications. + */ +- (KASCCFlow *> *)getCampaignMessagesBusinessId:(NSString *)businessId __attribute__((swift_name("getCampaignMessages(businessId:)"))); +@property (readonly) KASCCFlow *> *campaignMessagesState __attribute__((swift_name("campaignMessagesState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CampaignMessagesApi.Companion"))) +@interface KASCCampaignMessagesApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCampaignMessagesApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory________"))) +@interface KASCBusinessCategory________ : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("init(name:icon:code:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessCategory________Companion *companion __attribute__((swift_name("companion"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (KASCBusinessCategory________ *)doCopyName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("doCopy(name:icon:code:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique ategory code for this category */ +@property (readonly) NSString * _Nullable code __attribute__((swift_name("code"))); + +/** Url to this category's icon */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** Name of this category */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory________.Companion"))) +@interface KASCBusinessCategory________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessCategory________Companion *shared __attribute__((swift_name("shared"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData________"))) +@interface KASCBusinessData________ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage_________________ * _Nullable)logo logoTransparentBackground:(KASCImage_________________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage_________________ * _Nullable)coverPhoto category:(KASCBusinessCategory________ * _Nullable)category __attribute__((swift_name("init(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessData________Companion *companion __attribute__((swift_name("companion"))); + +/** + * Business profile data + */ +- (KASCBusinessData________ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage_________________ * _Nullable)logo logoTransparentBackground:(KASCImage_________________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage_________________ * _Nullable)coverPhoto category:(KASCBusinessCategory________ * _Nullable)category __attribute__((swift_name("doCopy(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))); + +/** + * Business profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** General about text for the business */ +@property (readonly) NSString * _Nullable about __attribute__((swift_name("about"))); +@property (readonly) KASCBusinessCategory________ * _Nullable category __attribute__((swift_name("category"))); + +/** Whether this is a conglomerate business. Conglomerate businesses are umbrellas for multiple business' in Kangaroo */ +@property (readonly) NSString * _Nullable conglomerate __attribute__((swift_name("conglomerate"))); +@property (readonly) KASCImage_________________ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique business ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage_________________ * _Nullable logo __attribute__((swift_name("logo"))); +@property (readonly) KASCImage_________________ * _Nullable logoTransparentBackground __attribute__((swift_name("logoTransparentBackground"))); + +/** The manner in which this business rewards its customers. This can be by purchase amount of by visit to the store */ +@property (readonly) NSString * _Nullable loyaltyType __attribute__((swift_name("loyaltyType"))); + +/** The name of this business */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** Whether this is a white label business. White label business' don't appear in the Kangaroo Mobile Customer app, as they usually have their own app. */ +@property (readonly) NSString * _Nullable whiteLabel __attribute__((swift_name("whiteLabel"))); +@end + + +/** + * Business profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData________.Companion"))) +@interface KASCBusinessData________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessData________Companion *shared __attribute__((swift_name("shared"))); + +/** + * Business profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * The core campaign object for this campaign. This might include data such as the original html content of the campaign, sms or push data, or offers and rewards attached to this campaign. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Campaign"))) +@interface KASCCampaign : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id subject:(NSString * _Nullable)subject htmlContent:(NSString * _Nullable)htmlContent plainContent:(NSString * _Nullable)plainContent pushTitle:(NSString * _Nullable)pushTitle pushBody:(NSString * _Nullable)pushBody pushLink:(NSString * _Nullable)pushLink pushImage:(NSString * _Nullable)pushImage offers:(NSArray * _Nullable)offers business:(KASCBusinessData________ * _Nullable)business __attribute__((swift_name("init(id:subject:htmlContent:plainContent:pushTitle:pushBody:pushLink:pushImage:offers:business:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCCampaignCompanion *companion __attribute__((swift_name("companion"))); + +/** + * The core campaign object for this campaign. This might include data such as the original html content of the campaign, sms or push data, or offers and rewards attached to this campaign. + */ +- (KASCCampaign *)doCopyId:(KASCLong * _Nullable)id subject:(NSString * _Nullable)subject htmlContent:(NSString * _Nullable)htmlContent plainContent:(NSString * _Nullable)plainContent pushTitle:(NSString * _Nullable)pushTitle pushBody:(NSString * _Nullable)pushBody pushLink:(NSString * _Nullable)pushLink pushImage:(NSString * _Nullable)pushImage offers:(NSArray * _Nullable)offers business:(KASCBusinessData________ * _Nullable)business __attribute__((swift_name("doCopy(id:subject:htmlContent:plainContent:pushTitle:pushBody:pushLink:pushImage:offers:business:)"))); + +/** + * The core campaign object for this campaign. This might include data such as the original html content of the campaign, sms or push data, or offers and rewards attached to this campaign. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * The core campaign object for this campaign. This might include data such as the original html content of the campaign, sms or push data, or offers and rewards attached to this campaign. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * The core campaign object for this campaign. This might include data such as the original html content of the campaign, sms or push data, or offers and rewards attached to this campaign. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCBusinessData________ * _Nullable business __attribute__((swift_name("business"))); +@property (readonly) NSString * _Nullable htmlContent __attribute__((swift_name("htmlContent"))); +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSArray * _Nullable offers __attribute__((swift_name("offers"))); +@property (readonly) NSString * _Nullable plainContent __attribute__((swift_name("plainContent"))); +@property (readonly) NSString * _Nullable pushBody __attribute__((swift_name("pushBody"))); +@property (readonly) NSString * _Nullable pushImage __attribute__((swift_name("pushImage"))); +@property (readonly) NSString * _Nullable pushLink __attribute__((swift_name("pushLink"))); +@property (readonly) NSString * _Nullable pushTitle __attribute__((swift_name("pushTitle"))); +@property (readonly) NSString * _Nullable subject __attribute__((swift_name("subject"))); +@end + + +/** + * The core campaign object for this campaign. This might include data such as the original html content of the campaign, sms or push data, or offers and rewards attached to this campaign. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Campaign.Companion"))) +@interface KASCCampaignCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * The core campaign object for this campaign. This might include data such as the original html content of the campaign, sms or push data, or offers and rewards attached to this campaign. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCampaignCompanion *shared __attribute__((swift_name("shared"))); + +/** + * The core campaign object for this campaign. This might include data such as the original html content of the campaign, sms or push data, or offers and rewards attached to this campaign. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Campaign Message. These are sent to the user by the business through Kangaroo's Marketing module. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CampaignMessage"))) +@interface KASCCampaignMessage : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id cellEmail:(KASCInt * _Nullable)cellEmail subject:(NSString * _Nullable)subject sentAt:(NSString * _Nullable)sentAt message:(NSString * _Nullable)message campaign:(KASCCampaign * _Nullable)campaign __attribute__((swift_name("init(id:cellEmail:subject:sentAt:message:campaign:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCCampaignMessageCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Campaign Message. These are sent to the user by the business through Kangaroo's Marketing module. + */ +- (KASCCampaignMessage *)doCopyId:(NSString * _Nullable)id cellEmail:(KASCInt * _Nullable)cellEmail subject:(NSString * _Nullable)subject sentAt:(NSString * _Nullable)sentAt message:(NSString * _Nullable)message campaign:(KASCCampaign * _Nullable)campaign __attribute__((swift_name("doCopy(id:cellEmail:subject:sentAt:message:campaign:)"))); + +/** + * Campaign Message. These are sent to the user by the business through Kangaroo's Marketing module. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Campaign Message. These are sent to the user by the business through Kangaroo's Marketing module. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Campaign Message. These are sent to the user by the business through Kangaroo's Marketing module. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCCampaign * _Nullable campaign __attribute__((swift_name("campaign"))); + +/** The original delivery method for this campaign */ +@property (readonly) KASCInt * _Nullable cellEmail __attribute__((swift_name("cellEmail"))); + +/** Unique campaign ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** A short / simple message for this campaign. */ +@property (readonly) NSString * _Nullable message __attribute__((swift_name("message"))); + +/** The original send date of this campaign. */ +@property (readonly) NSString * _Nullable sentAt __attribute__((swift_name("sentAt"))); + +/** The title for this campaign. */ +@property (readonly) NSString * _Nullable subject __attribute__((swift_name("subject"))); +@end + + +/** + * Campaign Message. These are sent to the user by the business through Kangaroo's Marketing module. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CampaignMessage.Companion"))) +@interface KASCCampaignMessageCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Campaign Message. These are sent to the user by the business through Kangaroo's Marketing module. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCampaignMessageCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Campaign Message. These are sent to the user by the business through Kangaroo's Marketing module. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Contains a list of campaign messages sent to this user + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CampaignMessagesModel"))) +@interface KASCCampaignMessagesModel : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCCampaignMessagesModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Contains a list of campaign messages sent to this user + */ +- (KASCCampaignMessagesModel *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * Contains a list of campaign messages sent to this user + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Contains a list of campaign messages sent to this user + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Contains a list of campaign messages sent to this user + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** List of campaign messages. */ +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * Contains a list of campaign messages sent to this user + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CampaignMessagesModel.Companion"))) +@interface KASCCampaignMessagesModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Contains a list of campaign messages sent to this user + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCampaignMessagesModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Contains a list of campaign messages sent to this user + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_________________"))) +@interface KASCImage_________________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage_________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage_________________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_________________.Companion"))) +@interface KASCImage_________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage_________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language______________________________"))) +@interface KASCLanguage______________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage______________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage______________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language______________________________.Companion"))) +@interface KASCLanguage______________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage______________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction_______"))) +@interface KASCOfferAction_______ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferAction_______Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferAction_______ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction_______.Companion"))) +@interface KASCOfferAction_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferAction_______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel_______"))) +@interface KASCOfferModel_______ : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCOfferModel_______Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferModel_______ *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this offer. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** Whether this offer must be claimed on a mobile app before being used in store. */ +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The offer description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this offer. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isCouponRedeemed __attribute__((swift_name("isCouponRedeemed"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this offer. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** The maximum purchase amount for this offer to be applied. */ +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); + +/** The minimum purchase amount for this offer to be applied */ +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); + +/** The multiplication factor of this offer. This only applies to Point Multiplier offers. */ +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this offer ever expires or not. If false, this offer is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this offer into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); + +/** The amount of points required for this offer to be applied. Only used for Convertible Coupons */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this offer */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this offer. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The offer title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This can be a free product, dollar based discount, percentage based discount, point multiplier, bonus points, and free shipping. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel_______.Companion"))) +@interface KASCOfferModel_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferModel_______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this offer. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation_______"))) +@interface KASCOfferTranslation_______ : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage______________________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferTranslation_______Companion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this offer. + */ +- (KASCOfferTranslation_______ *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage______________________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))); + +/** + * A language translation of this offer. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this offer. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this offer. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** where is this coupon available at. */ +@property (readonly) NSString * _Nullable couponAvailableAt __attribute__((swift_name("couponAvailableAt"))); + +/** The translated coupon description. */ +@property (readonly) NSString * _Nullable couponDescription __attribute__((swift_name("couponDescription"))); + +/** The language appropriate link of this coupon. */ +@property (readonly) NSString * _Nullable couponLink __attribute__((swift_name("couponLink"))); + +/** The translated coupon terms and conditions. */ +@property (readonly) NSString * _Nullable couponTermsConditions __attribute__((swift_name("couponTermsConditions"))); + +/** The translated coupon title. */ +@property (readonly) NSString * _Nullable couponTitle __attribute__((swift_name("couponTitle"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage______________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated offer description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this offer. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated offer terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated offer title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this offer. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation_______.Companion"))) +@interface KASCOfferTranslation_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this offer. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferTranslation_______Companion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this offer. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Reset a customer PIN. Requires both a verification code and either a phone number or email address [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserPinResetApi"))) +@interface KASCUserPinResetApi : KASCApi + +/** + * Reset a customer PIN. Requires both a verification code and either a phone number or email address [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Reset a customer PIN. Requires both a verification code and either a phone number or email address [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserPinResetApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Reset a customer PIN. Requires both a verification code and either a phone number or email address + */ +- (KASCCFlow *> *)resetPinVerificationCode:(NSString *)verificationCode pinCode:(NSString *)pinCode email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone countryCode:(NSString * _Nullable)countryCode __attribute__((swift_name("resetPin(verificationCode:pinCode:email:phone:countryCode:)"))); +@property (readonly) KASCCFlow *> *userPinResetState __attribute__((swift_name("userPinResetState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserPinResetApi.Companion"))) +@interface KASCUserPinResetApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserPinResetApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Verify a user's account [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserAccountVerificationApi"))) +@interface KASCUserAccountVerificationApi : KASCApi + +/** + * Verify a user's account [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Verify a user's account [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserAccountVerificationApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Verify a user's account + */ +- (KASCCFlow *> *)verifyAccountIntent:(NSString *)intent token:(NSString *)token email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone countryCode:(NSString * _Nullable)countryCode __attribute__((swift_name("verifyAccount(intent:token:email:phone:countryCode:)"))); +@property (readonly) KASCCFlow *> *userAccountVerificationState __attribute__((swift_name("userAccountVerificationState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserAccountVerificationApi.Companion"))) +@interface KASCUserAccountVerificationApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserAccountVerificationApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_______________________________"))) +@interface KASCLanguage_______________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_______________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_______________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_______________________________.Companion"))) +@interface KASCLanguage_______________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_______________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A referral program + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram________"))) +@interface KASCReferralProgram________ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("init(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCReferralProgram________Companion *companion __attribute__((swift_name("companion"))); + +/** + * A referral program + */ +- (KASCReferralProgram________ *)doCopyId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("doCopy(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))); + +/** + * A referral program + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A referral program + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A referral program + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The minimum purchawe amount required for a succesful referral. */ +@property (readonly) KASCDouble * _Nullable condMinAmount __attribute__((swift_name("condMinAmount"))); + +/** Denotes whether this referral program is currently active. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The number of days the new customer has to sign up in order for a referral to be sucessful. */ +@property (readonly) KASCLong * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); + +/** The unique id of this referral program. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Denotes whether this referral program has enabled share links. Referral share links are links that the customer can send to prospective referrals. A User can sign up to the business through this link in order to complete the referral. */ +@property (readonly) KASCBoolean * _Nullable linkReferralEnabled __attribute__((swift_name("linkReferralEnabled"))); + +/** The number of points the new customer will earn. */ +@property (readonly) KASCLong * _Nullable refereeEarns __attribute__((swift_name("refereeEarns"))); + +/** The number of points the new customer who made the referral will earn. */ +@property (readonly) KASCLong * _Nullable refererEarns __attribute__((swift_name("refererEarns"))); + +/** A link that can be shared to prospective referrals. */ +@property (readonly) NSString * _Nullable referralLink __attribute__((swift_name("referralLink"))); +@property (readonly) NSString * _Nullable ruleName __attribute__((swift_name("ruleName"))); +@end + + +/** + * A referral program + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram________.Companion"))) +@interface KASCReferralProgram________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A referral program + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCReferralProgram________Companion *shared __attribute__((swift_name("shared"))); + +/** + * A referral program + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel_________"))) +@interface KASCTierLevel_________ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevel_________Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier level. + */ +- (KASCTierLevel_________ *)doCopyId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))); + +/** + * Represents a single tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The icon of this tier level. */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** The ID for this tier. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** translation for each tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); + +/** The name of this tier level. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount of points acquired that is required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachPoints __attribute__((swift_name("reachPoints"))); + +/** The amount of money spent required to reach this tier. */ +@property (readonly) KASCFloat * _Nullable reachSpend __attribute__((swift_name("reachSpend"))); + +/** The amount of visits made to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachVisits __attribute__((swift_name("reachVisits"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable tierPerks __attribute__((swift_name("tierPerks"))); +@end + + +/** + * Represents a single tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel_________.Companion"))) +@interface KASCTierLevel_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevel_________Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation_________"))) +@interface KASCTierLevelTranslation_________ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage_______________________________ * _Nullable)language __attribute__((swift_name("init(languageId:name:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevelTranslation_________Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierLevelTranslation_________ *)doCopyLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage_______________________________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:name:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The description of this tier level as translated. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_______________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation_________.Companion"))) +@interface KASCTierLevelTranslation_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevelTranslation_________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier perk for a tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk_________"))) +@interface KASCTierPerk_________ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerk_________Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (KASCTierPerk_________ *)doCopyId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Whether this tier perk is currently enabled or disabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The ID for this tier perk. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Whether the offer this tier perk is currently attached to is expired or not. */ +@property (readonly) KASCBoolean * _Nullable isExpired __attribute__((swift_name("isExpired"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); +@property (readonly) KASCLong * _Nullable offerId __attribute__((swift_name("offerId"))); +@property (readonly) KASCLong * _Nullable punchItemId __attribute__((swift_name("punchItemId"))); + +/** The ID for the tier level this tier perk is related to. */ +@property (readonly) KASCLong * _Nullable tierId __attribute__((swift_name("tierId"))); + +/** The title of this tier perk. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + + +/** + * Represents a single tier perk for a tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk_________.Companion"))) +@interface KASCTierPerk_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier perk for a tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerk_________Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation_________"))) +@interface KASCTierPerkTranslation_________ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage_______________________________ * _Nullable)language __attribute__((swift_name("init(languageId:title:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerkTranslation_________Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierPerkTranslation_________ *)doCopyLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage_______________________________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_______________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation_________.Companion"))) +@interface KASCTierPerkTranslation_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerkTranslation_________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress_________"))) +@interface KASCTierProgress_________ : KASCBase +- (instancetype)initWithStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("init(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierProgress_________Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (KASCTierProgress_________ *)doCopyStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("doCopy(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The end date for this tier session. The tier will be reset once this date is reached. */ +@property (readonly) NSString * _Nullable endDate __attribute__((swift_name("endDate"))); + +/** The amount of spend left in the user's current tier progress. Once they have acquired this many more amount of spend, they will be moved into the next tier. */ +@property (readonly) KASCFloat * _Nullable leftAmount __attribute__((swift_name("leftAmount"))); + +/** The amount of points left in the user's current tier progress. Once they have acquired this many more amount of points, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftPoints __attribute__((swift_name("leftPoints"))); + +/** The amount of visits left in the user's current tier progress. Once they have acquired this many more amount of visits, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftVisits __attribute__((swift_name("leftVisits"))); + +/** The name of the user's next tier level. */ +@property (readonly) NSString * _Nullable nextTierLevel __attribute__((swift_name("nextTierLevel"))); + +/** The start date for this tier session. */ +@property (readonly) NSString * _Nullable startDate __attribute__((swift_name("startDate"))); + +/** The name of the user's current tier level */ +@property (readonly) NSString * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** The name of the user's current tier level. Tiers are recalculated once per day, as such \"tier_level\" may not be completely up to date. */ +@property (readonly) NSString * _Nullable tierLevelLive __attribute__((swift_name("tierLevelLive"))); + +/** The users current tier progress in their \"tier_level\". This will be a number between 0 and 1. A tier progress of 0.5 means that the user has made 50% progress in their current tier. */ +@property (readonly) KASCFloat * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); + +/** Purchase amount between start_date and end_date. */ +@property (readonly) KASCFloat * _Nullable totalAmount __attribute__((swift_name("totalAmount"))); + +/** Purchase points between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalPoints __attribute__((swift_name("totalPoints"))); + +/** Purchase visits between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalVisits __attribute__((swift_name("totalVisits"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress_________.Companion"))) +@interface KASCTierProgress_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierProgress_________Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile balance data. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance_________"))) +@interface KASCUserBalance_________ : KASCBase +- (instancetype)initWithPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("init(points:giftcard:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBalance_________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile balance data. + */ +- (KASCUserBalance_________ *)doCopyPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("doCopy(points:giftcard:)"))); + +/** + * User Profile balance data. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile balance data. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile balance data. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount of store credit in the users' e-wallet. */ +@property (readonly) KASCDouble * _Nullable giftcard __attribute__((swift_name("giftcard"))); + +/** The number of points this user currently has. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + + +/** + * User Profile balance data. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance_________.Companion"))) +@interface KASCUserBalance_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile balance data. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBalance_________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile balance data. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel___________________"))) +@interface KASCUserProfileDataModel___________________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel___________________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel___________________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel___________________.Companion"))) +@interface KASCUserProfileDataModel___________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel___________________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Extra user profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude________"))) +@interface KASCUserProfileInclude________ : KASCBase +- (instancetype)initWithBalance:(KASCUserBalance_________ * _Nullable)balance tierLevel:(KASCTierLevel_________ * _Nullable)tierLevel tierProgress:(KASCTierProgress_________ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("init(balance:tierLevel:tierProgress:referralPrograms:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserProfileInclude________Companion *companion __attribute__((swift_name("companion"))); + +/** + * Extra user profile data + */ +- (KASCUserProfileInclude________ *)doCopyBalance:(KASCUserBalance_________ * _Nullable)balance tierLevel:(KASCTierLevel_________ * _Nullable)tierLevel tierProgress:(KASCTierProgress_________ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("doCopy(balance:tierLevel:tierProgress:referralPrograms:)"))); + +/** + * Extra user profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Extra user profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Extra user profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** User Profile balance data. */ +@property (readonly) KASCUserBalance_________ * _Nullable balance __attribute__((swift_name("balance"))); + +/** A list of referral programs the user has access to. */ +@property (readonly) NSArray * _Nullable referralPrograms __attribute__((swift_name("referralPrograms"))); + +/** User's tier status. */ +@property (readonly) KASCTierLevel_________ * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** User's tier progress and status. If a user's tier status is statically fixed, this will be null as they do not progress from tier to tier. */ +@property (readonly) KASCTierProgress_________ * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); +@end + + +/** + * Extra user profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude________.Companion"))) +@interface KASCUserProfileInclude________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Extra user profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileInclude________Companion *shared __attribute__((swift_name("shared"))); + +/** + * Extra user profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel_______"))) +@interface KASCUserProfileModel_______ : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel___________________ * _Nullable)data included:(KASCUserProfileInclude________ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileModel_______Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileModel_______ *)doCopyData:(KASCUserProfileDataModel___________________ * _Nullable)data included:(KASCUserProfileInclude________ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user profile data */ +@property (readonly) KASCUserProfileDataModel___________________ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains user balance data */ +@property (readonly) KASCUserProfileInclude________ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel_______.Companion"))) +@interface KASCUserProfileModel_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileModel_______Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get the list of countries supported by Kangaroo [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CountriesApi"))) +@interface KASCCountriesApi : KASCApi + +/** + * Get the list of countries supported by Kangaroo [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get the list of countries supported by Kangaroo [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCCountriesApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get the list of countries supported by Kangaroo + */ +- (KASCCFlow *> *)getCountries __attribute__((swift_name("getCountries()"))); +@property (readonly) KASCCFlow *> *countriesState __attribute__((swift_name("countriesState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CountriesApi.Companion"))) +@interface KASCCountriesApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCountriesApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * A list of countries supported by Kangaroo + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Countries"))) +@interface KASCCountries : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCCountriesCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A list of countries supported by Kangaroo + */ +- (KASCCountries *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * A list of countries supported by Kangaroo + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A list of countries supported by Kangaroo + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A list of countries supported by Kangaroo + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of countries supported by Kangaroo */ +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * A list of countries supported by Kangaroo + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Countries.Companion"))) +@interface KASCCountriesCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A list of countries supported by Kangaroo + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCountriesCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A list of countries supported by Kangaroo + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A country model + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Country"))) +@interface KASCCountry : KASCBase +- (instancetype)initWithId:(KASCInt * _Nullable)id name:(NSString * _Nullable)name code:(NSString * _Nullable)code codeIso3:(NSString * _Nullable)codeIso3 phoneCode:(KASCInt * _Nullable)phoneCode __attribute__((swift_name("init(id:name:code:codeIso3:phoneCode:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCCountryCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A country model + */ +- (KASCCountry *)doCopyId:(KASCInt * _Nullable)id name:(NSString * _Nullable)name code:(NSString * _Nullable)code codeIso3:(NSString * _Nullable)codeIso3 phoneCode:(KASCInt * _Nullable)phoneCode __attribute__((swift_name("doCopy(id:name:code:codeIso3:phoneCode:)"))); + +/** + * A country model + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A country model + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A country model + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The two character country code for this country. Follows ISO standards. */ +@property (readonly) NSString * _Nullable code __attribute__((swift_name("code"))); + +/** The three character country code for this country. Follows ISO standards. */ +@property (readonly) NSString * _Nullable codeIso3 __attribute__((swift_name("codeIso3"))); + +/** Unique country ID. */ +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); + +/** The name of this country */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The international phoen code for this country. */ +@property (readonly) KASCInt * _Nullable phoneCode __attribute__((swift_name("phoneCode"))); +@end + + +/** + * A country model + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Country.Companion"))) +@interface KASCCountryCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A country model + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCountryCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A country model + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of offers available to all users. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicOffersApi"))) +@interface KASCPublicOffersApi : KASCApi + +/** + * Get a list of offers available to all users. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of offers available to all users. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCPublicOffersApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of offers available to all users. + */ +- (KASCCFlow *> *)getPublicOffers __attribute__((swift_name("getPublicOffers()"))); +@property (readonly) KASCCFlow *> *publicOffersState __attribute__((swift_name("publicOffersState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicOffersApi.Companion"))) +@interface KASCPublicOffersApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicOffersApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image__________________"))) +@interface KASCImage__________________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage__________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage__________________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image__________________.Companion"))) +@interface KASCImage__________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage__________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language________________________________"))) +@interface KASCLanguage________________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage________________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage________________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language________________________________.Companion"))) +@interface KASCLanguage________________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage________________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction________"))) +@interface KASCOfferAction________ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferAction________Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferAction________ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction________.Companion"))) +@interface KASCOfferAction________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferAction________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel________"))) +@interface KASCOfferModel________ : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCOfferModel________Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferModel________ *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this offer. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** Whether this offer must be claimed on a mobile app before being used in store. */ +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The offer description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this offer. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isCouponRedeemed __attribute__((swift_name("isCouponRedeemed"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this offer. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** The maximum purchase amount for this offer to be applied. */ +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); + +/** The minimum purchase amount for this offer to be applied */ +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); + +/** The multiplication factor of this offer. This only applies to Point Multiplier offers. */ +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this offer ever expires or not. If false, this offer is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this offer into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); + +/** The amount of points required for this offer to be applied. Only used for Convertible Coupons */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this offer */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this offer. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The offer title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This can be a free product, dollar based discount, percentage based discount, point multiplier, bonus points, and free shipping. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel________.Companion"))) +@interface KASCOfferModel________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferModel________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this offer. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation________"))) +@interface KASCOfferTranslation________ : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage________________________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferTranslation________Companion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this offer. + */ +- (KASCOfferTranslation________ *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage________________________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))); + +/** + * A language translation of this offer. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this offer. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this offer. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** where is this coupon available at. */ +@property (readonly) NSString * _Nullable couponAvailableAt __attribute__((swift_name("couponAvailableAt"))); + +/** The translated coupon description. */ +@property (readonly) NSString * _Nullable couponDescription __attribute__((swift_name("couponDescription"))); + +/** The language appropriate link of this coupon. */ +@property (readonly) NSString * _Nullable couponLink __attribute__((swift_name("couponLink"))); + +/** The translated coupon terms and conditions. */ +@property (readonly) NSString * _Nullable couponTermsConditions __attribute__((swift_name("couponTermsConditions"))); + +/** The translated coupon title. */ +@property (readonly) NSString * _Nullable couponTitle __attribute__((swift_name("couponTitle"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage________________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated offer description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this offer. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated offer terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated offer title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this offer. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation________.Companion"))) +@interface KASCOfferTranslation________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this offer. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferTranslation________Companion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this offer. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserOffersModel_"))) +@interface KASCUserOffersModel_ : KASCModel +- (instancetype)initWithData:(NSArray *)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserOffersModel_Companion *companion __attribute__((swift_name("companion"))); +- (KASCUserOffersModel_ *)doCopyData:(NSArray *)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of all offers available to this user */ +@property (readonly) NSArray *data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserOffersModel_.Companion"))) +@interface KASCUserOffersModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserOffersModel_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Acquires application strings. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("StringsApi"))) +@interface KASCStringsApi : KASCApi + +/** + * Acquires application strings. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Acquires application strings. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCStringsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Acquires application strings. + */ +- (KASCCFlow *> *)getStrings __attribute__((swift_name("getStrings()"))); +@property (readonly) KASCCFlow *> *stringsState __attribute__((swift_name("stringsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("StringsApi.Companion"))) +@interface KASCStringsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCStringsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ApplicationString"))) +@interface KASCApplicationString : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id key:(NSString * _Nullable)key string:(NSString * _Nullable)string createdAt:(NSString * _Nullable)createdAt __attribute__((swift_name("init(id:key:string:createdAt:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCApplicationStringCompanion *companion __attribute__((swift_name("companion"))); +- (KASCApplicationString *)doCopyId:(KASCLong * _Nullable)id key:(NSString * _Nullable)key string:(NSString * _Nullable)string createdAt:(NSString * _Nullable)createdAt __attribute__((swift_name("doCopy(id:key:string:createdAt:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSString * _Nullable key __attribute__((swift_name("key"))); +@property (readonly) NSString * _Nullable string __attribute__((swift_name("string"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ApplicationString.Companion"))) +@interface KASCApplicationStringCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCApplicationStringCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ApplicationStringsModel"))) +@interface KASCApplicationStringsModel : KASCModel +- (instancetype)initWithData:(NSArray *)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCApplicationStringsModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCApplicationStringsModel *)doCopyData:(NSArray *)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of application strings. */ +@property (readonly) NSArray *data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ApplicationStringsModel.Companion"))) +@interface KASCApplicationStringsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCApplicationStringsModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of gift cards available for purchase by specific business [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessGiftCardsApi"))) +@interface KASCUserBusinessGiftCardsApi : KASCApi + +/** + * Get a list of gift cards available for purchase by specific business [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of gift cards available for purchase by specific business [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserBusinessGiftCardsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of gift cards available for purchase by specific business + */ +- (KASCCFlow *> *)getUserBusinessGiftCardsBusinessId:(NSString *)businessId __attribute__((swift_name("getUserBusinessGiftCards(businessId:)"))); +@property (readonly) KASCCFlow *> *userBusinessGiftCardsState __attribute__((swift_name("userBusinessGiftCardsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessGiftCardsApi.Companion"))) +@interface KASCUserBusinessGiftCardsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessGiftCardsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory_________"))) +@interface KASCBusinessCategory_________ : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("init(name:icon:code:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessCategory_________Companion *companion __attribute__((swift_name("companion"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (KASCBusinessCategory_________ *)doCopyName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("doCopy(name:icon:code:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique ategory code for this category */ +@property (readonly) NSString * _Nullable code __attribute__((swift_name("code"))); + +/** Url to this category's icon */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** Name of this category */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory_________.Companion"))) +@interface KASCBusinessCategory_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessCategory_________Companion *shared __attribute__((swift_name("shared"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData_________"))) +@interface KASCBusinessData_________ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage___________________ * _Nullable)logo logoTransparentBackground:(KASCImage___________________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage___________________ * _Nullable)coverPhoto category:(KASCBusinessCategory_________ * _Nullable)category __attribute__((swift_name("init(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessData_________Companion *companion __attribute__((swift_name("companion"))); + +/** + * Business profile data + */ +- (KASCBusinessData_________ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage___________________ * _Nullable)logo logoTransparentBackground:(KASCImage___________________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage___________________ * _Nullable)coverPhoto category:(KASCBusinessCategory_________ * _Nullable)category __attribute__((swift_name("doCopy(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))); + +/** + * Business profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** General about text for the business */ +@property (readonly) NSString * _Nullable about __attribute__((swift_name("about"))); +@property (readonly) KASCBusinessCategory_________ * _Nullable category __attribute__((swift_name("category"))); + +/** Whether this is a conglomerate business. Conglomerate businesses are umbrellas for multiple business' in Kangaroo */ +@property (readonly) NSString * _Nullable conglomerate __attribute__((swift_name("conglomerate"))); +@property (readonly) KASCImage___________________ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique business ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage___________________ * _Nullable logo __attribute__((swift_name("logo"))); +@property (readonly) KASCImage___________________ * _Nullable logoTransparentBackground __attribute__((swift_name("logoTransparentBackground"))); + +/** The manner in which this business rewards its customers. This can be by purchase amount of by visit to the store */ +@property (readonly) NSString * _Nullable loyaltyType __attribute__((swift_name("loyaltyType"))); + +/** The name of this business */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** Whether this is a white label business. White label business' don't appear in the Kangaroo Mobile Customer app, as they usually have their own app. */ +@property (readonly) NSString * _Nullable whiteLabel __attribute__((swift_name("whiteLabel"))); +@end + + +/** + * Business profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData_________.Companion"))) +@interface KASCBusinessData_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessData_________Companion *shared __attribute__((swift_name("shared"))); + +/** + * Business profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardAction_"))) +@interface KASCGiftCardAction_ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCGiftCardAction_Companion *companion __attribute__((swift_name("companion"))); +- (KASCGiftCardAction_ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardAction_.Companion"))) +@interface KASCGiftCardAction_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardAction_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardModel_"))) +@interface KASCGiftCardModel_ : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCGiftCardModel_Companion *companion __attribute__((swift_name("companion"))); +- (KASCGiftCardModel_ *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this gift card. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The gift card description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this gift card */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this gift ard. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this gift card. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this gift card ever expires or not. If false, this gift card is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this gift card into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this gift card */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this gift card */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this gift card. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The gift card title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This is a gift card. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardModel_.Companion"))) +@interface KASCGiftCardModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardModel_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this gift card. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardTranslation_"))) +@interface KASCGiftCardTranslation_ : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink language:(KASCLanguage_________________________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCGiftCardTranslation_Companion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this gift card. + */ +- (KASCGiftCardTranslation_ *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink language:(KASCLanguage_________________________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:language:)"))); + +/** + * A language translation of this gift card. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this gift card. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this gift card. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_________________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated gift card description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this gift card. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated gift card terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated gift card title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this gift card. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardTranslation_.Companion"))) +@interface KASCGiftCardTranslation_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this gift card. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardTranslation_Companion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this gift card. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image___________________"))) +@interface KASCImage___________________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage___________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage___________________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image___________________.Companion"))) +@interface KASCImage___________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage___________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_________________________________"))) +@interface KASCLanguage_________________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_________________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_________________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_________________________________.Companion"))) +@interface KASCLanguage_________________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_________________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessGiftCardsIncluded"))) +@interface KASCUserBusinessGiftCardsIncluded : KASCBase +- (instancetype)initWithGiftcards:(NSArray * _Nullable)giftcards __attribute__((swift_name("init(giftcards:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBusinessGiftCardsIncludedCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserBusinessGiftCardsIncluded *)doCopyGiftcards:(NSArray * _Nullable)giftcards __attribute__((swift_name("doCopy(giftcards:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable giftcards __attribute__((swift_name("giftcards"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessGiftCardsIncluded.Companion"))) +@interface KASCUserBusinessGiftCardsIncludedCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessGiftCardsIncludedCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessGiftCardsModel"))) +@interface KASCUserBusinessGiftCardsModel : KASCModel +- (instancetype)initWithData:(KASCBusinessData_________ *)data included:(KASCUserBusinessGiftCardsIncluded * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserBusinessGiftCardsModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserBusinessGiftCardsModel *)doCopyData:(KASCBusinessData_________ *)data included:(KASCUserBusinessGiftCardsIncluded * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains business data */ +@property (readonly) KASCBusinessData_________ *data __attribute__((swift_name("data"))); + +/** Contains all gift cards items */ +@property (readonly) KASCUserBusinessGiftCardsIncluded * _Nullable included __attribute__((swift_name("included"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessGiftCardsModel.Companion"))) +@interface KASCUserBusinessGiftCardsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessGiftCardsModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get this users transfer messages. Transfer messages are points or e-wallet transfers from other users. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessagesApi"))) +@interface KASCTransferMessagesApi : KASCApi + +/** + * Get this users transfer messages. Transfer messages are points or e-wallet transfers from other users. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get this users transfer messages. Transfer messages are points or e-wallet transfers from other users. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCTransferMessagesApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get this users transfer messages. Transfer messages are points or e-wallet transfers from other users. + */ +- (KASCCFlow *> *)getTransferMessagesBusinessId:(NSString *)businessId __attribute__((swift_name("getTransferMessages(businessId:)"))); +@property (readonly) KASCCFlow *> *transferMessagesState __attribute__((swift_name("transferMessagesState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessagesApi.Companion"))) +@interface KASCTransferMessagesApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferMessagesApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image____________________"))) +@interface KASCImage____________________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage____________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage____________________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image____________________.Companion"))) +@interface KASCImage____________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage____________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language__________________________________"))) +@interface KASCLanguage__________________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage__________________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage__________________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language__________________________________.Companion"))) +@interface KASCLanguage__________________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage__________________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction_________"))) +@interface KASCOfferAction_________ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferAction_________Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferAction_________ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction_________.Companion"))) +@interface KASCOfferAction_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferAction_________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel_________"))) +@interface KASCOfferModel_________ : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCOfferModel_________Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferModel_________ *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this offer. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** Whether this offer must be claimed on a mobile app before being used in store. */ +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The offer description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this offer. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isCouponRedeemed __attribute__((swift_name("isCouponRedeemed"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this offer. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** The maximum purchase amount for this offer to be applied. */ +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); + +/** The minimum purchase amount for this offer to be applied */ +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); + +/** The multiplication factor of this offer. This only applies to Point Multiplier offers. */ +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this offer ever expires or not. If false, this offer is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this offer into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); + +/** The amount of points required for this offer to be applied. Only used for Convertible Coupons */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this offer */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this offer. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The offer title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This can be a free product, dollar based discount, percentage based discount, point multiplier, bonus points, and free shipping. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel_________.Companion"))) +@interface KASCOfferModel_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferModel_________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this offer. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation_________"))) +@interface KASCOfferTranslation_________ : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage__________________________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferTranslation_________Companion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this offer. + */ +- (KASCOfferTranslation_________ *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage__________________________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))); + +/** + * A language translation of this offer. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this offer. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this offer. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** where is this coupon available at. */ +@property (readonly) NSString * _Nullable couponAvailableAt __attribute__((swift_name("couponAvailableAt"))); + +/** The translated coupon description. */ +@property (readonly) NSString * _Nullable couponDescription __attribute__((swift_name("couponDescription"))); + +/** The language appropriate link of this coupon. */ +@property (readonly) NSString * _Nullable couponLink __attribute__((swift_name("couponLink"))); + +/** The translated coupon terms and conditions. */ +@property (readonly) NSString * _Nullable couponTermsConditions __attribute__((swift_name("couponTermsConditions"))); + +/** The translated coupon title. */ +@property (readonly) NSString * _Nullable couponTitle __attribute__((swift_name("couponTitle"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage__________________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated offer description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this offer. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated offer terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated offer title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this offer. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation_________.Companion"))) +@interface KASCOfferTranslation_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this offer. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferTranslation_________Companion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this offer. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessage__"))) +@interface KASCTransferMessage__ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id typeId:(KASCLong * _Nullable)typeId type:(NSString * _Nullable)type description:(NSString * _Nullable)description points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount hidden:(KASCBoolean * _Nullable)hidden createdAt:(NSString * _Nullable)createdAt offer:(KASCOfferModel_________ * _Nullable)offer giftCardQueue:(KASCTransferMessageGiftCardQueue__ * _Nullable)giftCardQueue actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:typeId:type:description:points:amount:hidden:createdAt:offer:giftCardQueue:actions:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransferMessage__Companion *companion __attribute__((swift_name("companion"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (KASCTransferMessage__ *)doCopyId:(KASCLong * _Nullable)id typeId:(KASCLong * _Nullable)typeId type:(NSString * _Nullable)type description:(NSString * _Nullable)description points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount hidden:(KASCBoolean * _Nullable)hidden createdAt:(NSString * _Nullable)createdAt offer:(KASCOfferModel_________ * _Nullable)offer giftCardQueue:(KASCTransferMessageGiftCardQueue__ * _Nullable)giftCardQueue actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:typeId:type:description:points:amount:hidden:createdAt:offer:giftCardQueue:actions:)"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** The amount in $ sent in this transfer. */ +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); + +/** The orignal send date of this transfer. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** The description of this transfer. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCTransferMessageGiftCardQueue__ * _Nullable giftCardQueue __attribute__((swift_name("giftCardQueue"))); +@property (readonly) KASCBoolean * _Nullable hidden __attribute__((swift_name("hidden"))); + +/** The unique ID of this transfer. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** The gift card in this transfer if applicable. Gift cards are an offer sub-type in Kangaroo. */ +@property (readonly) KASCOfferModel_________ * _Nullable offer __attribute__((swift_name("offer"))); + +/** The amount of points sent in this transfer. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** A string representation of this transfer type. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); + +/** The type ID of this transfer. */ +@property (readonly) KASCLong * _Nullable typeId __attribute__((swift_name("typeId"))); +@end + + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessage__.Companion"))) +@interface KASCTransferMessage__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferMessage__Companion *shared __attribute__((swift_name("shared"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageActions__"))) +@interface KASCTransferMessageActions__ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransferMessageActions__Companion *companion __attribute__((swift_name("companion"))); +- (KASCTransferMessageActions__ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The action type. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageActions__.Companion"))) +@interface KASCTransferMessageActions__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferMessageActions__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageGiftCardQueue__"))) +@interface KASCTransferMessageGiftCardQueue__ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id enabled:(KASCBoolean * _Nullable)enabled senderName:(NSString * _Nullable)senderName recipientName:(NSString * _Nullable)recipientName emailPhone:(NSString * _Nullable)emailPhone points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount createdAt:(NSString * _Nullable)createdAt scheduledAt:(NSString * _Nullable)scheduledAt __attribute__((swift_name("init(id:enabled:senderName:recipientName:emailPhone:points:amount:createdAt:scheduledAt:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransferMessageGiftCardQueue__Companion *companion __attribute__((swift_name("companion"))); +- (KASCTransferMessageGiftCardQueue__ *)doCopyId:(KASCLong * _Nullable)id enabled:(KASCBoolean * _Nullable)enabled senderName:(NSString * _Nullable)senderName recipientName:(NSString * _Nullable)recipientName emailPhone:(NSString * _Nullable)emailPhone points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount createdAt:(NSString * _Nullable)createdAt scheduledAt:(NSString * _Nullable)scheduledAt __attribute__((swift_name("doCopy(id:enabled:senderName:recipientName:emailPhone:points:amount:createdAt:scheduledAt:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount in $ sent in this transfer. */ +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); + +/** The orignal creation date of this transfer. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** The phone number or email address that this transfer was sent to. */ +@property (readonly) NSString * _Nullable emailPhone __attribute__((swift_name("emailPhone"))); + +/** Whether this item is enabled. Usually true. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The unique ID of this gift_card_queue */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** The amount of points sent in this transfer. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The name of the recipient of this transfer. */ +@property (readonly) NSString * _Nullable recipientName __attribute__((swift_name("recipientName"))); + +/** The original scheduled delivery date of this transfer. */ +@property (readonly) NSString * _Nullable scheduledAt __attribute__((swift_name("scheduledAt"))); + +/** The name of the sender of this transfer. */ +@property (readonly) NSString * _Nullable senderName __attribute__((swift_name("senderName"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageGiftCardQueue__.Companion"))) +@interface KASCTransferMessageGiftCardQueue__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferMessageGiftCardQueue__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Contains a list of transfer messages sent to this user + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessagesModel"))) +@interface KASCTransferMessagesModel : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCTransferMessagesModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Contains a list of transfer messages sent to this user + */ +- (KASCTransferMessagesModel *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * Contains a list of transfer messages sent to this user + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Contains a list of transfer messages sent to this user + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Contains a list of transfer messages sent to this user + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** List of transfer messages. */ +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * Contains a list of transfer messages sent to this user + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessagesModel.Companion"))) +@interface KASCTransferMessagesModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Contains a list of transfer messages sent to this user + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferMessagesModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Contains a list of transfer messages sent to this user + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of rewards available to all users. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicRewardsApi"))) +@interface KASCPublicRewardsApi : KASCApi + +/** + * Get a list of rewards available to all users. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of rewards available to all users. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCPublicRewardsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of rewards available to all users. + */ +- (KASCCFlow *> *)getPublicRewards __attribute__((swift_name("getPublicRewards()"))); +@property (readonly) KASCCFlow *> *publicRewardsState __attribute__((swift_name("publicRewardsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicRewardsApi.Companion"))) +@interface KASCPublicRewardsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicRewardsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_____________________"))) +@interface KASCImage_____________________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage_____________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage_____________________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_____________________.Companion"))) +@interface KASCImage_____________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage_____________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language___________________________________"))) +@interface KASCLanguage___________________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage___________________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage___________________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language___________________________________.Companion"))) +@interface KASCLanguage___________________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage___________________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicRewardsModel"))) +@interface KASCPublicRewardsModel : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCPublicRewardsModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCPublicRewardsModel *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicRewardsModel.Companion"))) +@interface KASCPublicRewardsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicRewardsModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardModel__"))) +@interface KASCRewardModel__ : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished amount:(KASCFloat * _Nullable)amount realValue:(KASCFloat * _Nullable)realValue discountValue:(KASCFloat * _Nullable)discountValue partnerReward:(KASCBoolean * _Nullable)partnerReward redeemForGiftCard:(KASCBoolean * _Nullable)redeemForGiftCard type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link rewardLanguages:(NSArray * _Nullable)rewardLanguages __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:amount:realValue:discountValue:partnerReward:redeemForGiftCard:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:rewardLanguages:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCRewardModel__Companion *companion __attribute__((swift_name("companion"))); +- (KASCRewardModel__ *)doCopyId:(KASCInt * _Nullable)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished amount:(KASCFloat * _Nullable)amount realValue:(KASCFloat * _Nullable)realValue discountValue:(KASCFloat * _Nullable)discountValue partnerReward:(KASCBoolean * _Nullable)partnerReward redeemForGiftCard:(KASCBoolean * _Nullable)redeemForGiftCard type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link rewardLanguages:(NSArray * _Nullable)rewardLanguages __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:amount:realValue:discountValue:partnerReward:redeemForGiftCard:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:rewardLanguages:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCFloat * _Nullable amount __attribute__((swift_name("amount"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCFloat * _Nullable discountValue __attribute__((swift_name("discountValue"))); +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); + +/** A unique ID identifying this reward */ +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCBoolean * _Nullable partnerReward __attribute__((swift_name("partnerReward"))); +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); +@property (readonly) KASCFloat * _Nullable realValue __attribute__((swift_name("realValue"))); +@property (readonly) KASCBoolean * _Nullable redeemForGiftCard __attribute__((swift_name("redeemForGiftCard"))); +@property (readonly) NSArray * _Nullable rewardLanguages __attribute__((swift_name("rewardLanguages"))); +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardModel__.Companion"))) +@interface KASCRewardModel__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRewardModel__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardTranslation___"))) +@interface KASCRewardTranslation___ : KASCBase +- (instancetype)initWithId:(KASCInt * _Nullable)id languageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link language:(KASCLanguage___________________________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:title:description:termsConditions:link:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCRewardTranslation___Companion *companion __attribute__((swift_name("companion"))); +- (KASCRewardTranslation___ *)doCopyId:(KASCInt * _Nullable)id languageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link language:(KASCLanguage___________________________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:title:description:termsConditions:link:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCLanguage___________________________________ * _Nullable language __attribute__((swift_name("language"))); +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardTranslation___.Companion"))) +@interface KASCRewardTranslation___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRewardTranslation___Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_authRefreshTokensParams"))) +@interface KASCKtor_client_authRefreshTokensParams : KASCBase +- (instancetype)initWithClient:(KASCKtor_client_coreHttpClient *)client response:(KASCKtor_client_coreHttpResponse *)response oldTokens:(KASCKtor_client_authBearerTokens * _Nullable)oldTokens __attribute__((swift_name("init(client:response:oldTokens:)"))) __attribute__((objc_designated_initializer)); +- (void)markAsRefreshTokenRequest:(KASCKtor_client_coreHttpRequestBuilder *)receiver __attribute__((swift_name("markAsRefreshTokenRequest(_:)"))); +@property (readonly) KASCKtor_client_coreHttpClient *client __attribute__((swift_name("client"))); +@property (readonly) KASCKtor_client_authBearerTokens * _Nullable oldTokens __attribute__((swift_name("oldTokens"))); +@property (readonly) KASCKtor_client_coreHttpResponse *response __attribute__((swift_name("response"))); +@end + +@interface KASCKtor_client_authRefreshTokensParams (Extensions) + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)refreshTokensClient:(KASCKtor_client_coreHttpClient *)client completionHandler:(void (^)(KASCKtor_client_authBearerTokens * _Nullable_result, NSError * _Nullable))completionHandler __attribute__((swift_name("refreshTokens(client:completionHandler:)"))); +@end + +@interface KASCUserReAuthenticationModel (Extensions) +- (KASCAuthenticationModel *)toAuthenticationModelScope:(NSString * _Nullable)scope __attribute__((swift_name("toAuthenticationModel(scope:)"))); +@end + +@interface KASCResult (Extensions) + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport +*/ +- (KASCSerializedResult *)toJsonResult __attribute__((swift_name("toJsonResult()"))); +@end + +@interface KASCIOResult (Extensions) + +/** + * Maps IOResult to Result, along with possible errors. Errors should be mapped + * to relevant equivalents in the Domain layer. + */ +- (KASCResult *)toModel __attribute__((swift_name("toModel()"))); +@end + +@interface KASCCFlow (Extensions) + +/** + * Serializes [GetConglomerateNotificationPreferencesState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeGetConglomerateNotificationPreferencesState __attribute__((swift_name("serializeGetConglomerateNotificationPreferencesState()"))); + +/** + * Serializes [TiersState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeTiersState __attribute__((swift_name("serializeTiersState()"))); + +/** + * Serializes [UserBusinessProfileState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserBusinessProfileState __attribute__((swift_name("serializeUserBusinessProfileState()"))); + +/** + * Serializes [OfferFacebookShareState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeOfferFacebookShareState __attribute__((swift_name("serializeOfferFacebookShareState()"))); + +/** + * Serializes [UserProfileState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserProfileState __attribute__((swift_name("serializeUserProfileState()"))); + +/** + * Serializes [UserCheckInState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserCheckInState __attribute__((swift_name("serializeUserCheckInState()"))); + +/** + * Serializes [AlaCarteProductsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeAlaCarteProductsState __attribute__((swift_name("serializeAlaCarteProductsState()"))); + +/** + * Serializes [UserBusinessRewardsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserBusinessRewardsState __attribute__((swift_name("serializeUserBusinessRewardsState()"))); + +/** + * Serializes [UserBusinessAlaCarteProductsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserBusinessAlaCarteProductsState __attribute__((swift_name("serializeUserBusinessAlaCarteProductsState()"))); + +/** + * Serializes [UserProfileUpdateState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserProfileUpdateState __attribute__((swift_name("serializeUserProfileUpdateState()"))); + +/** + * Serializes [GiftCardDepositState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeGiftCardDepositState __attribute__((swift_name("serializeGiftCardDepositState()"))); + +/** + * Serializes [PublicAlaCarteProductsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializePublicAlaCarteProductsState __attribute__((swift_name("serializePublicAlaCarteProductsState()"))); + +/** + * Serializes [PayPalPaymentState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializePayPalPaymentState __attribute__((swift_name("serializePayPalPaymentState()"))); + +/** + * Serializes [SocialMediaActionPerformState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeSocialMediaActionPerformState __attribute__((swift_name("serializeSocialMediaActionPerformState()"))); + +/** + * Serializes [RedeemRewardsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeRedeemRewardsState __attribute__((swift_name("serializeRedeemRewardsState()"))); + +/** + * Serializes [PublicProductsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializePublicProductsState __attribute__((swift_name("serializePublicProductsState()"))); + +/** + * Serializes [UserRewardsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserRewardsState __attribute__((swift_name("serializeUserRewardsState()"))); + +/** + * Serializes [BannersState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeBannersState __attribute__((swift_name("serializeBannersState()"))); + +/** + * Serializes [BalanceTransferState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeBalanceTransferState __attribute__((swift_name("serializeBalanceTransferState()"))); + +/** + * Serializes [GiftCardsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeGiftCardsState __attribute__((swift_name("serializeGiftCardsState()"))); + +/** + * Serializes [BusinessesState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeBusinessesState __attribute__((swift_name("serializeBusinessesState()"))); + +/** + * Serializes [UserCouponsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserCouponsState __attribute__((swift_name("serializeUserCouponsState()"))); + +/** + * Serializes [UserBusinessSocialMediaLinksState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserBusinessSocialMediaLinksState __attribute__((swift_name("serializeUserBusinessSocialMediaLinksState()"))); + +/** + * Serializes [RedeemCouponsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeRedeemCouponsState __attribute__((swift_name("serializeRedeemCouponsState()"))); + +/** + * Serializes [UserDeleteState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserDeleteState __attribute__((swift_name("serializeUserDeleteState()"))); + +/** + * Serializes [GetNotificationPreferencesState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeGetNotificationPreferencesState __attribute__((swift_name("serializeGetNotificationPreferencesState()"))); + +/** + * Serializes [UserUnsubscribeState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserUnsubscribeState __attribute__((swift_name("serializeUserUnsubscribeState()"))); + +/** + * Serializes [UserDetailsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserDetailsState __attribute__((swift_name("serializeUserDetailsState()"))); + +/** + * Serializes [BranchesState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeBranchesState __attribute__((swift_name("serializeBranchesState()"))); + +/** + * Serializes [UserScanReceiptState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserScanReceiptState __attribute__((swift_name("serializeUserScanReceiptState()"))); + +/** + * Serializes [GetSpinToWinPrizesState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeGetSpinToWinPrizesState __attribute__((swift_name("serializeGetSpinToWinPrizesState()"))); + +/** + * Serializes [GiftCardPurchaseState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeGiftCardPurchaseState __attribute__((swift_name("serializeGiftCardPurchaseState()"))); + +/** + * Serializes [UserBusinessBannersState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserBusinessBannersState __attribute__((swift_name("serializeUserBusinessBannersState()"))); + +/** + * Serializes [UserOffersState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserOffersState __attribute__((swift_name("serializeUserOffersState()"))); + +/** + * Serializes [UpdateDefaultBusinessIdState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUpdateDefaultBusinessIdState __attribute__((swift_name("serializeUpdateDefaultBusinessIdState()"))); + +/** + * Serializes [UserPinResetRequestState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserPinResetRequestState __attribute__((swift_name("serializeUserPinResetRequestState()"))); + +/** + * Serializes [ClaimOfferState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeClaimOfferState __attribute__((swift_name("serializeClaimOfferState()"))); + +/** + * Serializes [UserTransactionHistoryState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserTransactionHistoryState __attribute__((swift_name("serializeUserTransactionHistoryState()"))); + +/** + * Serializes [SocialMediaLinksState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeSocialMediaLinksState __attribute__((swift_name("serializeSocialMediaLinksState()"))); + +/** + * Serializes [UserProductsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserProductsState __attribute__((swift_name("serializeUserProductsState()"))); + +/** + * Serializes [UserRegistrationState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserRegistrationState __attribute__((swift_name("serializeUserRegistrationState()"))); + +/** + * Serializes [BusinessState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeBusinessState __attribute__((swift_name("serializeBusinessState()"))); + +/** + * Serializes [PublicBusinessSettingsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializePublicBusinessSettingsState __attribute__((swift_name("serializePublicBusinessSettingsState()"))); + +/** + * Serializes [GetDefaultBusinessIdState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeGetDefaultBusinessIdState __attribute__((swift_name("serializeGetDefaultBusinessIdState()"))); + +/** + * Serializes [UserBusinessFrequentBuyerProgramsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserBusinessFrequentBuyerProgramsState __attribute__((swift_name("serializeUserBusinessFrequentBuyerProgramsState()"))); + +/** + * Serializes [PublicBranchesState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializePublicBranchesState __attribute__((swift_name("serializePublicBranchesState()"))); + +/** + * Serializes [UserPinUpdateState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserPinUpdateState __attribute__((swift_name("serializeUserPinUpdateState()"))); + +/** + * Serializes [PushTokenRegistrationState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializePushTokenRegistrationState __attribute__((swift_name("serializePushTokenRegistrationState()"))); + +/** + * Serializes [UserBusinessOffersState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserBusinessOffersState __attribute__((swift_name("serializeUserBusinessOffersState()"))); + +/** + * Serializes [PublicBannersState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializePublicBannersState __attribute__((swift_name("serializePublicBannersState()"))); + +/** + * Serializes [UpdateNotificationPreferencesState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUpdateNotificationPreferencesState __attribute__((swift_name("serializeUpdateNotificationPreferencesState()"))); + +/** + * Serializes [UserBusinessProductsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserBusinessProductsState __attribute__((swift_name("serializeUserBusinessProductsState()"))); + +/** + * Serializes [UserUsedCouponsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserUsedCouponsState __attribute__((swift_name("serializeUserUsedCouponsState()"))); + +/** + * Serializes [UserAuthenticationState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserAuthenticationState __attribute__((swift_name("serializeUserAuthenticationState()"))); + +/** + * Serializes [FrequentBuyerProgramsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeFrequentBuyerProgramsState __attribute__((swift_name("serializeFrequentBuyerProgramsState()"))); + +/** + * Serializes [TransferRecallState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeTransferRecallState __attribute__((swift_name("serializeTransferRecallState()"))); + +/** + * Serializes [CampaignMessagesState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeCampaignMessagesState __attribute__((swift_name("serializeCampaignMessagesState()"))); + +/** + * Serializes [UserPinResetState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserPinResetState __attribute__((swift_name("serializeUserPinResetState()"))); + +/** + * Serializes [UserAccountVerificationState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserAccountVerificationState __attribute__((swift_name("serializeUserAccountVerificationState()"))); + +/** + * Serializes [CountriesState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeCountriesState __attribute__((swift_name("serializeCountriesState()"))); + +/** + * Serializes [PublicOffersState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializePublicOffersState __attribute__((swift_name("serializePublicOffersState()"))); + +/** + * Serializes [StringsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeStringsState __attribute__((swift_name("serializeStringsState()"))); + +/** + * Serializes [UserBusinessGiftCardsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserBusinessGiftCardsState __attribute__((swift_name("serializeUserBusinessGiftCardsState()"))); + +/** + * Serializes [TransferMessagesState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeTransferMessagesState __attribute__((swift_name("serializeTransferMessagesState()"))); + +/** + * Serializes [PublicRewardsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializePublicRewardsState __attribute__((swift_name("serializePublicRewardsState()"))); +@end + +@interface KASCUserAuthenticationModel (Extensions) +- (KASCAuthenticationModel *)toAuthenticationModel __attribute__((swift_name("toAuthenticationModel()"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("EndpointKt"))) +@interface KASCEndpointKt : KASCBase ++ (id)replaceInPath:(id)receiver extraPaths:(KASCKotlinArray *)extraPaths __attribute__((swift_name("replaceInPath(_:extraPaths:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("LanguageKt"))) +@interface KASCLanguageKt : KASCBase +@property (class, readonly) NSString *LangHttpHeader __attribute__((swift_name("LangHttpHeader"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("DoNothingKt"))) +@interface KASCDoNothingKt : KASCBase + +/** + * Empty action. Often used in When() statements + */ +@property (class, readonly) KASCKotlinUnit *doNothing __attribute__((swift_name("doNothing"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ConfigurationKt"))) +@interface KASCConfigurationKt : KASCBase +@property (class, readonly) BOOL isDebug __attribute__((swift_name("isDebug"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FlowUtilsKt"))) +@interface KASCFlowUtilsKt : KASCBase + +/** + * Wraps Flow with [CFlow] wrapper + */ ++ (KASCCFlow *)asCFlow:(id)receiver __attribute__((swift_name("asCFlow(_:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TranslationUtilsKt"))) +@interface KASCTranslationUtilsKt : KASCBase ++ (KASCTranslation * _Nullable)findTranslation:(NSArray *)receiver language:(KASCLanguage_ *)language __attribute__((swift_name("findTranslation(_:language:)"))); ++ (KASCTranslation * _Nullable)findTranslation:(NSArray *)receiver langCode:(NSString *)langCode __attribute__((swift_name("findTranslation(_:langCode:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PreferredLanguageKt"))) +@interface KASCPreferredLanguageKt : KASCBase +@property (class, readonly) NSString *PREFERRED_LANGUAGE __attribute__((swift_name("PREFERRED_LANGUAGE"))); +@end + +__attribute__((swift_name("Kotlinx_serialization_coreSerializationStrategy"))) +@protocol KASCKotlinx_serialization_coreSerializationStrategy +@required +- (void)serializeEncoder:(id)encoder value:(id _Nullable)value __attribute__((swift_name("serialize(encoder:value:)"))); +@property (readonly) id descriptor __attribute__((swift_name("descriptor"))); +@end + +__attribute__((swift_name("Kotlinx_serialization_coreDeserializationStrategy"))) +@protocol KASCKotlinx_serialization_coreDeserializationStrategy +@required +- (id _Nullable)deserializeDecoder:(id)decoder __attribute__((swift_name("deserialize(decoder:)"))); +@property (readonly) id descriptor __attribute__((swift_name("descriptor"))); +@end + +__attribute__((swift_name("Kotlinx_serialization_coreKSerializer"))) +@protocol KASCKotlinx_serialization_coreKSerializer +@required +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("KotlinEnumCompanion"))) +@interface KASCKotlinEnumCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKotlinEnumCompanion *shared __attribute__((swift_name("shared"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("KotlinArray"))) +@interface KASCKotlinArray : KASCBase ++ (instancetype)arrayWithSize:(int32_t)size init:(T _Nullable (^)(KASCInt *))init __attribute__((swift_name("init(size:init:)"))); ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); +- (T _Nullable)getIndex:(int32_t)index __attribute__((swift_name("get(index:)"))); +- (id)iterator __attribute__((swift_name("iterator()"))); +- (void)setIndex:(int32_t)index value:(T _Nullable)value __attribute__((swift_name("set(index:value:)"))); +@property (readonly) int32_t size __attribute__((swift_name("size"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Stately_concurrencyAtomicReference"))) +@interface KASCStately_concurrencyAtomicReference : KASCBase +- (instancetype)initWithInitialValue:(V _Nullable)initialValue __attribute__((swift_name("init(initialValue:)"))) __attribute__((objc_designated_initializer)); +- (BOOL)compareAndSetExpected:(V _Nullable)expected new:(V _Nullable)new_ __attribute__((swift_name("compareAndSet(expected:new:)"))); +- (V _Nullable)get __attribute__((swift_name("get()"))); +- (void)setValue_:(V _Nullable)value_ __attribute__((swift_name("set(value_:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Stately_concurrencyAtomicBoolean"))) +@interface KASCStately_concurrencyAtomicBoolean : KASCBase +- (instancetype)initWithValue_:(BOOL)value_ __attribute__((swift_name("init(value_:)"))) __attribute__((objc_designated_initializer)); +- (BOOL)compareAndSetExpected:(BOOL)expected new:(BOOL)new_ __attribute__((swift_name("compareAndSet(expected:new:)"))); +@property BOOL value __attribute__((swift_name("value"))); +@end + +__attribute__((swift_name("KotlinRuntimeException"))) +@interface KASCKotlinRuntimeException : KASCKotlinException +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (instancetype)initWithMessage:(NSString * _Nullable)message __attribute__((swift_name("init(message:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithMessage:(NSString * _Nullable)message cause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(message:cause:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithCause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(cause:)"))) __attribute__((objc_designated_initializer)); +@end + +__attribute__((swift_name("KotlinIllegalStateException"))) +@interface KASCKotlinIllegalStateException : KASCKotlinRuntimeException +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (instancetype)initWithMessage:(NSString * _Nullable)message __attribute__((swift_name("init(message:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithMessage:(NSString * _Nullable)message cause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(message:cause:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithCause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(cause:)"))) __attribute__((objc_designated_initializer)); +@end + + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.4") +*/ +__attribute__((swift_name("KotlinCancellationException"))) +@interface KASCKotlinCancellationException : KASCKotlinIllegalStateException +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (instancetype)initWithMessage:(NSString * _Nullable)message __attribute__((swift_name("init(message:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithMessage:(NSString * _Nullable)message cause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(message:cause:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithCause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(cause:)"))) __attribute__((objc_designated_initializer)); +@end + +__attribute__((swift_name("KotlinFunction"))) +@protocol KASCKotlinFunction +@required +@end + +__attribute__((swift_name("KotlinSuspendFunction0"))) +@protocol KASCKotlinSuspendFunction0 +@required + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)invokeWithCompletionHandler:(void (^)(id _Nullable_result, NSError * _Nullable))completionHandler __attribute__((swift_name("invoke(completionHandler:)"))); +@end + +__attribute__((swift_name("Ktor_httpHttpMessageBuilder"))) +@protocol KASCKtor_httpHttpMessageBuilder +@required +@property (readonly) KASCKtor_httpHeadersBuilder *headers __attribute__((swift_name("headers"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpRequestBuilder"))) +@interface KASCKtor_client_coreHttpRequestBuilder : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCKtor_client_coreHttpRequestBuilderCompanion *companion __attribute__((swift_name("companion"))); +- (KASCKtor_client_coreHttpRequestData *)build __attribute__((swift_name("build()"))); +- (id _Nullable)getCapabilityOrNullKey:(id)key __attribute__((swift_name("getCapabilityOrNull(key:)"))); +- (void)setAttributesBlock:(void (^)(id))block __attribute__((swift_name("setAttributes(block:)"))); +- (void)setCapabilityKey:(id)key capability:(id)capability __attribute__((swift_name("setCapability(key:capability:)"))); +- (KASCKtor_client_coreHttpRequestBuilder *)takeFromBuilder:(KASCKtor_client_coreHttpRequestBuilder *)builder __attribute__((swift_name("takeFrom(builder:)"))); +- (KASCKtor_client_coreHttpRequestBuilder *)takeFromWithExecutionContextBuilder:(KASCKtor_client_coreHttpRequestBuilder *)builder __attribute__((swift_name("takeFromWithExecutionContext(builder:)"))); +- (void)urlBlock:(void (^)(KASCKtor_httpURLBuilder *, KASCKtor_httpURLBuilder *))block __attribute__((swift_name("url(block:)"))); +@property (readonly) id attributes __attribute__((swift_name("attributes"))); +@property id body __attribute__((swift_name("body"))); +@property KASCKtor_utilsTypeInfo * _Nullable bodyType __attribute__((swift_name("bodyType"))); +@property (readonly) id executionContext __attribute__((swift_name("executionContext"))); +@property (readonly) KASCKtor_httpHeadersBuilder *headers __attribute__((swift_name("headers"))); +@property KASCKtor_httpHttpMethod *method __attribute__((swift_name("method"))); +@property (readonly) KASCKtor_httpURLBuilder *url __attribute__((swift_name("url"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreCoroutineScope"))) +@protocol KASCKotlinx_coroutines_coreCoroutineScope +@required +@property (readonly) id coroutineContext __attribute__((swift_name("coroutineContext"))); +@end + +__attribute__((swift_name("Ktor_ioCloseable"))) +@protocol KASCKtor_ioCloseable +@required +- (void)close __attribute__((swift_name("close()"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpClient"))) +@interface KASCKtor_client_coreHttpClient : KASCBase +- (instancetype)initWithEngine:(id)engine userConfig:(KASCKtor_client_coreHttpClientConfig *)userConfig __attribute__((swift_name("init(engine:userConfig:)"))) __attribute__((objc_designated_initializer)); +- (void)close __attribute__((swift_name("close()"))); +- (KASCKtor_client_coreHttpClient *)configBlock:(void (^)(KASCKtor_client_coreHttpClientConfig *))block __attribute__((swift_name("config(block:)"))); +- (BOOL)isSupportedCapability:(id)capability __attribute__((swift_name("isSupported(capability:)"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) id attributes __attribute__((swift_name("attributes"))); +@property (readonly) id coroutineContext __attribute__((swift_name("coroutineContext"))); +@property (readonly) id engine __attribute__((swift_name("engine"))); +@property (readonly) KASCKtor_client_coreHttpClientEngineConfig *engineConfig __attribute__((swift_name("engineConfig"))); +@property (readonly) KASCKtor_eventsEvents *monitor __attribute__((swift_name("monitor"))); +@property (readonly) KASCKtor_client_coreHttpReceivePipeline *receivePipeline __attribute__((swift_name("receivePipeline"))); +@property (readonly) KASCKtor_client_coreHttpRequestPipeline *requestPipeline __attribute__((swift_name("requestPipeline"))); +@property (readonly) KASCKtor_client_coreHttpResponsePipeline *responsePipeline __attribute__((swift_name("responsePipeline"))); +@property (readonly) KASCKtor_client_coreHttpSendPipeline *sendPipeline __attribute__((swift_name("sendPipeline"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreFlowCollector"))) +@protocol KASCKotlinx_coroutines_coreFlowCollector +@required + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)emitValue:(id _Nullable)value completionHandler:(void (^)(NSError * _Nullable))completionHandler __attribute__((swift_name("emit(value:completionHandler:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("KotlinNothing"))) +@interface KASCKotlinNothing : KASCBase +@end + +__attribute__((swift_name("Ktor_httpHttpMessage"))) +@protocol KASCKtor_httpHttpMessage +@required +@property (readonly) id headers __attribute__((swift_name("headers"))); +@end + +__attribute__((swift_name("Ktor_client_coreHttpResponse"))) +@interface KASCKtor_client_coreHttpResponse : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCKtor_client_coreHttpClientCall *call __attribute__((swift_name("call"))); +@property (readonly) id content __attribute__((swift_name("content"))); +@property (readonly) KASCKtor_utilsGMTDate *requestTime __attribute__((swift_name("requestTime"))); +@property (readonly) KASCKtor_utilsGMTDate *responseTime __attribute__((swift_name("responseTime"))); +@property (readonly) KASCKtor_httpHttpStatusCode *status __attribute__((swift_name("status"))); +@property (readonly) KASCKtor_httpHttpProtocolVersion *version __attribute__((swift_name("version"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_authBearerTokens"))) +@interface KASCKtor_client_authBearerTokens : KASCBase +- (instancetype)initWithAccessToken:(NSString *)accessToken refreshToken:(NSString *)refreshToken __attribute__((swift_name("init(accessToken:refreshToken:)"))) __attribute__((objc_designated_initializer)); +@property (readonly) NSString *accessToken __attribute__((swift_name("accessToken"))); +@property (readonly) NSString *refreshToken __attribute__((swift_name("refreshToken"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("KotlinUnit"))) +@interface KASCKotlinUnit : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)unit __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKotlinUnit *shared __attribute__((swift_name("shared"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@end + +__attribute__((swift_name("Kotlinx_serialization_coreEncoder"))) +@protocol KASCKotlinx_serialization_coreEncoder +@required +- (id)beginCollectionDescriptor:(id)descriptor collectionSize:(int32_t)collectionSize __attribute__((swift_name("beginCollection(descriptor:collectionSize:)"))); +- (id)beginStructureDescriptor:(id)descriptor __attribute__((swift_name("beginStructure(descriptor:)"))); +- (void)encodeBooleanValue:(BOOL)value __attribute__((swift_name("encodeBoolean(value:)"))); +- (void)encodeByteValue:(int8_t)value __attribute__((swift_name("encodeByte(value:)"))); +- (void)encodeCharValue:(unichar)value __attribute__((swift_name("encodeChar(value:)"))); +- (void)encodeDoubleValue:(double)value __attribute__((swift_name("encodeDouble(value:)"))); +- (void)encodeEnumEnumDescriptor:(id)enumDescriptor index:(int32_t)index __attribute__((swift_name("encodeEnum(enumDescriptor:index:)"))); +- (void)encodeFloatValue:(float)value __attribute__((swift_name("encodeFloat(value:)"))); +- (id)encodeInlineDescriptor:(id)descriptor __attribute__((swift_name("encodeInline(descriptor:)"))); +- (void)encodeIntValue:(int32_t)value __attribute__((swift_name("encodeInt(value:)"))); +- (void)encodeLongValue:(int64_t)value __attribute__((swift_name("encodeLong(value:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (void)encodeNotNullMark __attribute__((swift_name("encodeNotNullMark()"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (void)encodeNull __attribute__((swift_name("encodeNull()"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (void)encodeNullableSerializableValueSerializer:(id)serializer value:(id _Nullable)value __attribute__((swift_name("encodeNullableSerializableValue(serializer:value:)"))); +- (void)encodeSerializableValueSerializer:(id)serializer value:(id _Nullable)value __attribute__((swift_name("encodeSerializableValue(serializer:value:)"))); +- (void)encodeShortValue:(int16_t)value __attribute__((swift_name("encodeShort(value:)"))); +- (void)encodeStringValue:(NSString *)value __attribute__((swift_name("encodeString(value:)"))); +@property (readonly) KASCKotlinx_serialization_coreSerializersModule *serializersModule __attribute__((swift_name("serializersModule"))); +@end + +__attribute__((swift_name("Kotlinx_serialization_coreSerialDescriptor"))) +@protocol KASCKotlinx_serialization_coreSerialDescriptor +@required + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (NSArray> *)getElementAnnotationsIndex:(int32_t)index __attribute__((swift_name("getElementAnnotations(index:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (id)getElementDescriptorIndex:(int32_t)index __attribute__((swift_name("getElementDescriptor(index:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (int32_t)getElementIndexName:(NSString *)name __attribute__((swift_name("getElementIndex(name:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (NSString *)getElementNameIndex:(int32_t)index __attribute__((swift_name("getElementName(index:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (BOOL)isElementOptionalIndex:(int32_t)index __attribute__((swift_name("isElementOptional(index:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +@property (readonly) NSArray> *annotations __attribute__((swift_name("annotations"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +@property (readonly) int32_t elementsCount __attribute__((swift_name("elementsCount"))); +@property (readonly) BOOL isInline __attribute__((swift_name("isInline"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +@property (readonly) BOOL isNullable __attribute__((swift_name("isNullable"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +@property (readonly) KASCKotlinx_serialization_coreSerialKind *kind __attribute__((swift_name("kind"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +@property (readonly) NSString *serialName __attribute__((swift_name("serialName"))); +@end + +__attribute__((swift_name("Kotlinx_serialization_coreDecoder"))) +@protocol KASCKotlinx_serialization_coreDecoder +@required +- (id)beginStructureDescriptor:(id)descriptor __attribute__((swift_name("beginStructure(descriptor:)"))); +- (BOOL)decodeBoolean __attribute__((swift_name("decodeBoolean()"))); +- (int8_t)decodeByte __attribute__((swift_name("decodeByte()"))); +- (unichar)decodeChar __attribute__((swift_name("decodeChar()"))); +- (double)decodeDouble __attribute__((swift_name("decodeDouble()"))); +- (int32_t)decodeEnumEnumDescriptor:(id)enumDescriptor __attribute__((swift_name("decodeEnum(enumDescriptor:)"))); +- (float)decodeFloat __attribute__((swift_name("decodeFloat()"))); +- (id)decodeInlineDescriptor:(id)descriptor __attribute__((swift_name("decodeInline(descriptor:)"))); +- (int32_t)decodeInt __attribute__((swift_name("decodeInt()"))); +- (int64_t)decodeLong __attribute__((swift_name("decodeLong()"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (BOOL)decodeNotNullMark __attribute__((swift_name("decodeNotNullMark()"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (KASCKotlinNothing * _Nullable)decodeNull __attribute__((swift_name("decodeNull()"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (id _Nullable)decodeNullableSerializableValueDeserializer:(id)deserializer __attribute__((swift_name("decodeNullableSerializableValue(deserializer:)"))); +- (id _Nullable)decodeSerializableValueDeserializer:(id)deserializer __attribute__((swift_name("decodeSerializableValue(deserializer:)"))); +- (int16_t)decodeShort __attribute__((swift_name("decodeShort()"))); +- (NSString *)decodeString __attribute__((swift_name("decodeString()"))); +@property (readonly) KASCKotlinx_serialization_coreSerializersModule *serializersModule __attribute__((swift_name("serializersModule"))); +@end + +__attribute__((swift_name("KotlinIterator"))) +@protocol KASCKotlinIterator +@required +- (BOOL)hasNext __attribute__((swift_name("hasNext()"))); +- (id _Nullable)next __attribute__((swift_name("next()"))); +@end + +__attribute__((swift_name("Ktor_utilsStringValuesBuilder"))) +@protocol KASCKtor_utilsStringValuesBuilder +@required +- (void)appendName:(NSString *)name value:(NSString *)value __attribute__((swift_name("append(name:value:)"))); +- (void)appendAllStringValues:(id)stringValues __attribute__((swift_name("appendAll(stringValues:)"))); +- (void)appendAllName:(NSString *)name values:(id)values __attribute__((swift_name("appendAll(name:values:)"))); +- (void)appendMissingStringValues:(id)stringValues __attribute__((swift_name("appendMissing(stringValues:)"))); +- (void)appendMissingName:(NSString *)name values:(id)values __attribute__((swift_name("appendMissing(name:values:)"))); +- (id)build __attribute__((swift_name("build()"))); +- (void)clear __attribute__((swift_name("clear()"))); +- (BOOL)containsName:(NSString *)name __attribute__((swift_name("contains(name:)"))); +- (BOOL)containsName:(NSString *)name value:(NSString *)value __attribute__((swift_name("contains(name:value:)"))); +- (NSSet> *)entries __attribute__((swift_name("entries()"))); +- (NSString * _Nullable)getName:(NSString *)name __attribute__((swift_name("get(name:)"))); +- (NSArray * _Nullable)getAllName:(NSString *)name __attribute__((swift_name("getAll(name:)"))); +- (BOOL)isEmpty __attribute__((swift_name("isEmpty()"))); +- (NSSet *)names __attribute__((swift_name("names()"))); +- (void)removeName:(NSString *)name __attribute__((swift_name("remove(name:)"))); +- (BOOL)removeName:(NSString *)name value:(NSString *)value __attribute__((swift_name("remove(name:value:)"))); +- (void)removeKeysWithNoEntries __attribute__((swift_name("removeKeysWithNoEntries()"))); +- (void)setName:(NSString *)name value:(NSString *)value __attribute__((swift_name("set(name:value:)"))); +@property (readonly) BOOL caseInsensitiveName __attribute__((swift_name("caseInsensitiveName"))); +@end + +__attribute__((swift_name("Ktor_utilsStringValuesBuilderImpl"))) +@interface KASCKtor_utilsStringValuesBuilderImpl : KASCBase +- (instancetype)initWithCaseInsensitiveName:(BOOL)caseInsensitiveName size:(int32_t)size __attribute__((swift_name("init(caseInsensitiveName:size:)"))) __attribute__((objc_designated_initializer)); +- (void)appendName:(NSString *)name value:(NSString *)value __attribute__((swift_name("append(name:value:)"))); +- (void)appendAllStringValues:(id)stringValues __attribute__((swift_name("appendAll(stringValues:)"))); +- (void)appendAllName:(NSString *)name values:(id)values __attribute__((swift_name("appendAll(name:values:)"))); +- (void)appendMissingStringValues:(id)stringValues __attribute__((swift_name("appendMissing(stringValues:)"))); +- (void)appendMissingName:(NSString *)name values:(id)values __attribute__((swift_name("appendMissing(name:values:)"))); +- (id)build __attribute__((swift_name("build()"))); +- (void)clear __attribute__((swift_name("clear()"))); +- (BOOL)containsName:(NSString *)name __attribute__((swift_name("contains(name:)"))); +- (BOOL)containsName:(NSString *)name value:(NSString *)value __attribute__((swift_name("contains(name:value:)"))); +- (NSSet> *)entries __attribute__((swift_name("entries()"))); +- (NSString * _Nullable)getName:(NSString *)name __attribute__((swift_name("get(name:)"))); +- (NSArray * _Nullable)getAllName:(NSString *)name __attribute__((swift_name("getAll(name:)"))); +- (BOOL)isEmpty __attribute__((swift_name("isEmpty()"))); +- (NSSet *)names __attribute__((swift_name("names()"))); +- (void)removeName:(NSString *)name __attribute__((swift_name("remove(name:)"))); +- (BOOL)removeName:(NSString *)name value:(NSString *)value __attribute__((swift_name("remove(name:value:)"))); +- (void)removeKeysWithNoEntries __attribute__((swift_name("removeKeysWithNoEntries()"))); +- (void)setName:(NSString *)name value:(NSString *)value __attribute__((swift_name("set(name:value:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)validateNameName:(NSString *)name __attribute__((swift_name("validateName(name:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)validateValueValue:(NSString *)value __attribute__((swift_name("validateValue(value:)"))); +@property (readonly) BOOL caseInsensitiveName __attribute__((swift_name("caseInsensitiveName"))); + +/** + * @note This property has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +@property (readonly) KASCMutableDictionary *> *values __attribute__((swift_name("values"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpHeadersBuilder"))) +@interface KASCKtor_httpHeadersBuilder : KASCKtor_utilsStringValuesBuilderImpl +- (instancetype)initWithSize:(int32_t)size __attribute__((swift_name("init(size:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithCaseInsensitiveName:(BOOL)caseInsensitiveName size:(int32_t)size __attribute__((swift_name("init(caseInsensitiveName:size:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +- (id)build __attribute__((swift_name("build()"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)validateNameName:(NSString *)name __attribute__((swift_name("validateName(name:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)validateValueValue:(NSString *)value __attribute__((swift_name("validateValue(value:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpRequestBuilder.Companion"))) +@interface KASCKtor_client_coreHttpRequestBuilderCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_client_coreHttpRequestBuilderCompanion *shared __attribute__((swift_name("shared"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpRequestData"))) +@interface KASCKtor_client_coreHttpRequestData : KASCBase +- (instancetype)initWithUrl:(KASCKtor_httpUrl *)url method:(KASCKtor_httpHttpMethod *)method headers:(id)headers body:(KASCKtor_httpOutgoingContent *)body executionContext:(id)executionContext attributes:(id)attributes __attribute__((swift_name("init(url:method:headers:body:executionContext:attributes:)"))) __attribute__((objc_designated_initializer)); +- (id _Nullable)getCapabilityOrNullKey:(id)key __attribute__((swift_name("getCapabilityOrNull(key:)"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) id attributes __attribute__((swift_name("attributes"))); +@property (readonly) KASCKtor_httpOutgoingContent *body __attribute__((swift_name("body"))); +@property (readonly) id executionContext __attribute__((swift_name("executionContext"))); +@property (readonly) id headers __attribute__((swift_name("headers"))); +@property (readonly) KASCKtor_httpHttpMethod *method __attribute__((swift_name("method"))); +@property (readonly) KASCKtor_httpUrl *url __attribute__((swift_name("url"))); +@end + +__attribute__((swift_name("Ktor_client_coreHttpClientEngineCapability"))) +@protocol KASCKtor_client_coreHttpClientEngineCapability +@required +@end + +__attribute__((swift_name("Ktor_utilsAttributes"))) +@protocol KASCKtor_utilsAttributes +@required +- (id)computeIfAbsentKey:(KASCKtor_utilsAttributeKey *)key block:(id (^)(void))block __attribute__((swift_name("computeIfAbsent(key:block:)"))); +- (BOOL)containsKey:(KASCKtor_utilsAttributeKey *)key __attribute__((swift_name("contains(key:)"))); +- (id)getKey:(KASCKtor_utilsAttributeKey *)key __attribute__((swift_name("get(key:)"))); +- (id _Nullable)getOrNullKey:(KASCKtor_utilsAttributeKey *)key __attribute__((swift_name("getOrNull(key:)"))); +- (void)putKey:(KASCKtor_utilsAttributeKey *)key value:(id)value __attribute__((swift_name("put(key:value:)"))); +- (void)removeKey:(KASCKtor_utilsAttributeKey *)key __attribute__((swift_name("remove(key:)"))); +- (id)takeKey:(KASCKtor_utilsAttributeKey *)key __attribute__((swift_name("take(key:)"))); +- (id _Nullable)takeOrNullKey:(KASCKtor_utilsAttributeKey *)key __attribute__((swift_name("takeOrNull(key:)"))); +@property (readonly) NSArray *> *allKeys __attribute__((swift_name("allKeys"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpURLBuilder"))) +@interface KASCKtor_httpURLBuilder : KASCBase +- (instancetype)initWithProtocol:(KASCKtor_httpURLProtocol *)protocol host:(NSString *)host port:(int32_t)port user:(NSString * _Nullable)user password:(NSString * _Nullable)password pathSegments:(NSArray *)pathSegments parameters:(id)parameters fragment:(NSString *)fragment trailingQuery:(BOOL)trailingQuery __attribute__((swift_name("init(protocol:host:port:user:password:pathSegments:parameters:fragment:trailingQuery:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKtor_httpURLBuilderCompanion *companion __attribute__((swift_name("companion"))); +- (KASCKtor_httpUrl *)build __attribute__((swift_name("build()"))); +- (NSString *)buildString __attribute__((swift_name("buildString()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property NSString *encodedFragment __attribute__((swift_name("encodedFragment"))); +@property id encodedParameters __attribute__((swift_name("encodedParameters"))); +@property NSString * _Nullable encodedPassword __attribute__((swift_name("encodedPassword"))); +@property NSArray *encodedPathSegments __attribute__((swift_name("encodedPathSegments"))); +@property NSString * _Nullable encodedUser __attribute__((swift_name("encodedUser"))); +@property NSString *fragment __attribute__((swift_name("fragment"))); +@property NSString *host __attribute__((swift_name("host"))); +@property (readonly) id parameters __attribute__((swift_name("parameters"))); +@property NSString * _Nullable password __attribute__((swift_name("password"))); +@property NSArray *pathSegments __attribute__((swift_name("pathSegments"))); +@property int32_t port __attribute__((swift_name("port"))); +@property KASCKtor_httpURLProtocol *protocol __attribute__((swift_name("protocol"))); +@property BOOL trailingQuery __attribute__((swift_name("trailingQuery"))); +@property NSString * _Nullable user __attribute__((swift_name("user"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_utilsTypeInfo"))) +@interface KASCKtor_utilsTypeInfo : KASCBase +- (instancetype)initWithType:(id)type reifiedType:(id)reifiedType kotlinType:(id _Nullable)kotlinType __attribute__((swift_name("init(type:reifiedType:kotlinType:)"))) __attribute__((objc_designated_initializer)); +- (KASCKtor_utilsTypeInfo *)doCopyType:(id)type reifiedType:(id)reifiedType kotlinType:(id _Nullable)kotlinType __attribute__((swift_name("doCopy(type:reifiedType:kotlinType:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) id _Nullable kotlinType __attribute__((swift_name("kotlinType"))); +@property (readonly) id reifiedType __attribute__((swift_name("reifiedType"))); +@property (readonly) id type __attribute__((swift_name("type"))); +@end + + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.3") +*/ +__attribute__((swift_name("KotlinCoroutineContext"))) +@protocol KASCKotlinCoroutineContext +@required +- (id _Nullable)foldInitial:(id _Nullable)initial operation:(id _Nullable (^)(id _Nullable, id))operation __attribute__((swift_name("fold(initial:operation:)"))); +- (id _Nullable)getKey_:(id)key __attribute__((swift_name("get(key_:)"))); +- (id)minusKeyKey:(id)key __attribute__((swift_name("minusKey(key:)"))); +- (id)plusContext:(id)context __attribute__((swift_name("plus(context:)"))); +@end + +__attribute__((swift_name("KotlinCoroutineContextElement"))) +@protocol KASCKotlinCoroutineContextElement +@required +@property (readonly) id key __attribute__((swift_name("key"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreJob"))) +@protocol KASCKotlinx_coroutines_coreJob +@required +- (id)attachChildChild:(id)child __attribute__((swift_name("attachChild(child:)"))); +- (void)cancelCause:(KASCKotlinCancellationException * _Nullable)cause __attribute__((swift_name("cancel(cause:)"))); +- (KASCKotlinCancellationException *)getCancellationException __attribute__((swift_name("getCancellationException()"))); +- (id)invokeOnCompletionOnCancelling:(BOOL)onCancelling invokeImmediately:(BOOL)invokeImmediately handler:(void (^)(KASCKotlinThrowable * _Nullable))handler __attribute__((swift_name("invokeOnCompletion(onCancelling:invokeImmediately:handler:)"))); +- (id)invokeOnCompletionHandler:(void (^)(KASCKotlinThrowable * _Nullable))handler __attribute__((swift_name("invokeOnCompletion(handler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)joinWithCompletionHandler:(void (^)(NSError * _Nullable))completionHandler __attribute__((swift_name("join(completionHandler:)"))); +- (id)plusOther:(id)other __attribute__((swift_name("plus(other:)"))) __attribute__((unavailable("Operator '+' on two Job objects is meaningless. Job is a coroutine context element and `+` is a set-sum operator for coroutine contexts. The job to the right of `+` just replaces the job the left of `+`."))); +- (BOOL)start __attribute__((swift_name("start()"))); +@property (readonly) id children __attribute__((swift_name("children"))); +@property (readonly) BOOL isActive __attribute__((swift_name("isActive"))); +@property (readonly) BOOL isCancelled __attribute__((swift_name("isCancelled"))); +@property (readonly) BOOL isCompleted __attribute__((swift_name("isCompleted"))); +@property (readonly) id onJoin __attribute__((swift_name("onJoin"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpHttpMethod"))) +@interface KASCKtor_httpHttpMethod : KASCBase +- (instancetype)initWithValue:(NSString *)value __attribute__((swift_name("init(value:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKtor_httpHttpMethodCompanion *companion __attribute__((swift_name("companion"))); +- (KASCKtor_httpHttpMethod *)doCopyValue:(NSString *)value __attribute__((swift_name("doCopy(value:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *value __attribute__((swift_name("value"))); +@end + +__attribute__((swift_name("Ktor_client_coreHttpClientEngine"))) +@protocol KASCKtor_client_coreHttpClientEngine +@required + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)executeData:(KASCKtor_client_coreHttpRequestData *)data completionHandler:(void (^)(KASCKtor_client_coreHttpResponseData * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("execute(data:completionHandler:)"))); +- (void)installClient:(KASCKtor_client_coreHttpClient *)client __attribute__((swift_name("install(client:)"))); +@property (readonly) KASCKtor_client_coreHttpClientEngineConfig *config __attribute__((swift_name("config"))); +@property (readonly) KASCKotlinx_coroutines_coreCoroutineDispatcher *dispatcher __attribute__((swift_name("dispatcher"))); +@property (readonly) NSSet> *supportedCapabilities __attribute__((swift_name("supportedCapabilities"))); +@end + +__attribute__((swift_name("Ktor_client_coreHttpClientEngineConfig"))) +@interface KASCKtor_client_coreHttpClientEngineConfig : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property BOOL pipelining __attribute__((swift_name("pipelining"))); +@property KASCKtor_client_coreProxyConfig * _Nullable proxy __attribute__((swift_name("proxy"))); +@property int32_t threadsCount __attribute__((swift_name("threadsCount"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpClientConfig"))) +@interface KASCKtor_client_coreHttpClientConfig : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (KASCKtor_client_coreHttpClientConfig *)clone __attribute__((swift_name("clone()"))); +- (void)engineBlock:(void (^)(T))block __attribute__((swift_name("engine(block:)"))); +- (void)installClient:(KASCKtor_client_coreHttpClient *)client __attribute__((swift_name("install(client:)"))); +- (void)installPlugin:(id)plugin configure:(void (^)(id))configure __attribute__((swift_name("install(plugin:configure:)"))); +- (void)installKey:(NSString *)key block:(void (^)(KASCKtor_client_coreHttpClient *))block __attribute__((swift_name("install(key:block:)"))); +- (void)plusAssignOther:(KASCKtor_client_coreHttpClientConfig *)other __attribute__((swift_name("plusAssign(other:)"))); +@property BOOL developmentMode __attribute__((swift_name("developmentMode"))); +@property BOOL expectSuccess __attribute__((swift_name("expectSuccess"))); +@property BOOL followRedirects __attribute__((swift_name("followRedirects"))); +@property BOOL useDefaultTransformers __attribute__((swift_name("useDefaultTransformers"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_eventsEvents"))) +@interface KASCKtor_eventsEvents : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (void)raiseDefinition:(KASCKtor_eventsEventDefinition *)definition value:(id _Nullable)value __attribute__((swift_name("raise(definition:value:)"))); +- (id)subscribeDefinition:(KASCKtor_eventsEventDefinition *)definition handler:(void (^)(id _Nullable))handler __attribute__((swift_name("subscribe(definition:handler:)"))); +- (void)unsubscribeDefinition:(KASCKtor_eventsEventDefinition *)definition handler:(void (^)(id _Nullable))handler __attribute__((swift_name("unsubscribe(definition:handler:)"))); +@end + +__attribute__((swift_name("Ktor_utilsPipeline"))) +@interface KASCKtor_utilsPipeline : KASCBase +- (instancetype)initWithPhase:(KASCKtor_utilsPipelinePhase *)phase interceptors:(NSArray> *)interceptors __attribute__((swift_name("init(phase:interceptors:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithPhases:(KASCKotlinArray *)phases __attribute__((swift_name("init(phases:)"))) __attribute__((objc_designated_initializer)); +- (void)addPhasePhase:(KASCKtor_utilsPipelinePhase *)phase __attribute__((swift_name("addPhase(phase:)"))); +- (void)afterIntercepted __attribute__((swift_name("afterIntercepted()"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)executeContext:(TContext)context subject:(TSubject)subject completionHandler:(void (^)(TSubject _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("execute(context:subject:completionHandler:)"))); +- (void)insertPhaseAfterReference:(KASCKtor_utilsPipelinePhase *)reference phase:(KASCKtor_utilsPipelinePhase *)phase __attribute__((swift_name("insertPhaseAfter(reference:phase:)"))); +- (void)insertPhaseBeforeReference:(KASCKtor_utilsPipelinePhase *)reference phase:(KASCKtor_utilsPipelinePhase *)phase __attribute__((swift_name("insertPhaseBefore(reference:phase:)"))); +- (void)interceptPhase:(KASCKtor_utilsPipelinePhase *)phase block:(id)block __attribute__((swift_name("intercept(phase:block:)"))); +- (NSArray> *)interceptorsForPhasePhase:(KASCKtor_utilsPipelinePhase *)phase __attribute__((swift_name("interceptorsForPhase(phase:)"))); +- (void)mergeFrom:(KASCKtor_utilsPipeline *)from __attribute__((swift_name("merge(from:)"))); +- (void)mergePhasesFrom:(KASCKtor_utilsPipeline *)from __attribute__((swift_name("mergePhases(from:)"))); +- (void)resetFromFrom:(KASCKtor_utilsPipeline *)from __attribute__((swift_name("resetFrom(from:)"))); +@property (readonly) id attributes __attribute__((swift_name("attributes"))); +@property (readonly) BOOL developmentMode __attribute__((swift_name("developmentMode"))); +@property (readonly, getter=isEmpty_) BOOL isEmpty __attribute__((swift_name("isEmpty"))); +@property (readonly) NSArray *items __attribute__((swift_name("items"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpReceivePipeline"))) +@interface KASCKtor_client_coreHttpReceivePipeline : KASCKtor_utilsPipeline +- (instancetype)initWithDevelopmentMode:(BOOL)developmentMode __attribute__((swift_name("init(developmentMode:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithPhase:(KASCKtor_utilsPipelinePhase *)phase interceptors:(NSArray> *)interceptors __attribute__((swift_name("init(phase:interceptors:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +- (instancetype)initWithPhases:(KASCKotlinArray *)phases __attribute__((swift_name("init(phases:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCKtor_client_coreHttpReceivePipelinePhases *companion __attribute__((swift_name("companion"))); +@property (readonly) BOOL developmentMode __attribute__((swift_name("developmentMode"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpRequestPipeline"))) +@interface KASCKtor_client_coreHttpRequestPipeline : KASCKtor_utilsPipeline +- (instancetype)initWithDevelopmentMode:(BOOL)developmentMode __attribute__((swift_name("init(developmentMode:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithPhase:(KASCKtor_utilsPipelinePhase *)phase interceptors:(NSArray> *)interceptors __attribute__((swift_name("init(phase:interceptors:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +- (instancetype)initWithPhases:(KASCKotlinArray *)phases __attribute__((swift_name("init(phases:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCKtor_client_coreHttpRequestPipelinePhases *companion __attribute__((swift_name("companion"))); +@property (readonly) BOOL developmentMode __attribute__((swift_name("developmentMode"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpResponsePipeline"))) +@interface KASCKtor_client_coreHttpResponsePipeline : KASCKtor_utilsPipeline +- (instancetype)initWithDevelopmentMode:(BOOL)developmentMode __attribute__((swift_name("init(developmentMode:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithPhase:(KASCKtor_utilsPipelinePhase *)phase interceptors:(NSArray> *)interceptors __attribute__((swift_name("init(phase:interceptors:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +- (instancetype)initWithPhases:(KASCKotlinArray *)phases __attribute__((swift_name("init(phases:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCKtor_client_coreHttpResponsePipelinePhases *companion __attribute__((swift_name("companion"))); +@property (readonly) BOOL developmentMode __attribute__((swift_name("developmentMode"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpSendPipeline"))) +@interface KASCKtor_client_coreHttpSendPipeline : KASCKtor_utilsPipeline +- (instancetype)initWithDevelopmentMode:(BOOL)developmentMode __attribute__((swift_name("init(developmentMode:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithPhase:(KASCKtor_utilsPipelinePhase *)phase interceptors:(NSArray> *)interceptors __attribute__((swift_name("init(phase:interceptors:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +- (instancetype)initWithPhases:(KASCKotlinArray *)phases __attribute__((swift_name("init(phases:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCKtor_client_coreHttpSendPipelinePhases *companion __attribute__((swift_name("companion"))); +@property (readonly) BOOL developmentMode __attribute__((swift_name("developmentMode"))); +@end + +__attribute__((swift_name("Ktor_utilsStringValues"))) +@protocol KASCKtor_utilsStringValues +@required +- (BOOL)containsName:(NSString *)name __attribute__((swift_name("contains(name:)"))); +- (BOOL)containsName:(NSString *)name value:(NSString *)value __attribute__((swift_name("contains(name:value:)"))); +- (NSSet> *)entries __attribute__((swift_name("entries()"))); +- (void)forEachBody:(void (^)(NSString *, NSArray *))body __attribute__((swift_name("forEach(body:)"))); +- (NSString * _Nullable)getName:(NSString *)name __attribute__((swift_name("get(name:)"))); +- (NSArray * _Nullable)getAllName:(NSString *)name __attribute__((swift_name("getAll(name:)"))); +- (BOOL)isEmpty __attribute__((swift_name("isEmpty()"))); +- (NSSet *)names __attribute__((swift_name("names()"))); +@property (readonly) BOOL caseInsensitiveName __attribute__((swift_name("caseInsensitiveName"))); +@end + +__attribute__((swift_name("Ktor_httpHeaders"))) +@protocol KASCKtor_httpHeaders +@required +@end + +__attribute__((swift_name("Ktor_client_coreHttpClientCall"))) +@interface KASCKtor_client_coreHttpClientCall : KASCBase +- (instancetype)initWithClient:(KASCKtor_client_coreHttpClient *)client requestData:(KASCKtor_client_coreHttpRequestData *)requestData responseData:(KASCKtor_client_coreHttpResponseData *)responseData __attribute__((swift_name("init(client:requestData:responseData:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithClient:(KASCKtor_client_coreHttpClient *)client __attribute__((swift_name("init(client:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKtor_client_coreHttpClientCallCompanion *companion __attribute__((swift_name("companion"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)bodyInfo:(KASCKtor_utilsTypeInfo *)info completionHandler:(void (^)(id _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("body(info:completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)bodyNullableInfo:(KASCKtor_utilsTypeInfo *)info completionHandler:(void (^)(id _Nullable_result, NSError * _Nullable))completionHandler __attribute__((swift_name("bodyNullable(info:completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)getResponseContentWithCompletionHandler:(void (^)(id _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("getResponseContent(completionHandler:)"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** + * @note This property has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +@property (readonly) BOOL allowDoubleReceive __attribute__((swift_name("allowDoubleReceive"))); +@property (readonly) id attributes __attribute__((swift_name("attributes"))); +@property (readonly) KASCKtor_client_coreHttpClient *client __attribute__((swift_name("client"))); +@property (readonly) id coroutineContext __attribute__((swift_name("coroutineContext"))); +@property id request __attribute__((swift_name("request"))); +@property KASCKtor_client_coreHttpResponse *response __attribute__((swift_name("response"))); +@end + +__attribute__((swift_name("Ktor_ioByteReadChannel"))) +@protocol KASCKtor_ioByteReadChannel +@required + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)awaitContentWithCompletionHandler:(void (^)(NSError * _Nullable))completionHandler __attribute__((swift_name("awaitContent(completionHandler:)"))); +- (BOOL)cancelCause_:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("cancel(cause_:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)discardMax:(int64_t)max completionHandler:(void (^)(KASCLong * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("discard(max:completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)peekToDestination:(KASCKtor_ioMemory *)destination destinationOffset:(int64_t)destinationOffset offset:(int64_t)offset min:(int64_t)min max:(int64_t)max completionHandler:(void (^)(KASCLong * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("peekTo(destination:destinationOffset:offset:min:max:completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readAvailableDst:(KASCKtor_ioChunkBuffer *)dst completionHandler:(void (^)(KASCInt * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readAvailable(dst:completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readAvailableDst:(KASCKotlinByteArray *)dst offset:(int32_t)offset length:(int32_t)length completionHandler:(void (^)(KASCInt * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readAvailable(dst:offset:length:completionHandler:)"))); +- (int32_t)readAvailableMin:(int32_t)min block:(void (^)(KASCKtor_ioBuffer *))block __attribute__((swift_name("readAvailable(min:block:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readAvailableDst:(void *)dst offset:(int32_t)offset length:(int32_t)length completionHandler_:(void (^)(KASCInt * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readAvailable(dst:offset:length:completionHandler_:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readAvailableDst:(void *)dst offset:(int64_t)offset length:(int64_t)length completionHandler__:(void (^)(KASCInt * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readAvailable(dst:offset:length:completionHandler__:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readBooleanWithCompletionHandler:(void (^)(KASCBoolean * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readBoolean(completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readByteWithCompletionHandler:(void (^)(KASCByte * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readByte(completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readDoubleWithCompletionHandler:(void (^)(KASCDouble * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readDouble(completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readFloatWithCompletionHandler:(void (^)(KASCFloat * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readFloat(completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readFullyDst:(KASCKtor_ioChunkBuffer *)dst n:(int32_t)n completionHandler:(void (^)(NSError * _Nullable))completionHandler __attribute__((swift_name("readFully(dst:n:completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readFullyDst:(KASCKotlinByteArray *)dst offset:(int32_t)offset length:(int32_t)length completionHandler:(void (^)(NSError * _Nullable))completionHandler __attribute__((swift_name("readFully(dst:offset:length:completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readFullyDst:(void *)dst offset:(int32_t)offset length:(int32_t)length completionHandler_:(void (^)(NSError * _Nullable))completionHandler __attribute__((swift_name("readFully(dst:offset:length:completionHandler_:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readFullyDst:(void *)dst offset:(int64_t)offset length:(int64_t)length completionHandler__:(void (^)(NSError * _Nullable))completionHandler __attribute__((swift_name("readFully(dst:offset:length:completionHandler__:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readIntWithCompletionHandler:(void (^)(KASCInt * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readInt(completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readLongWithCompletionHandler:(void (^)(KASCLong * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readLong(completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readPacketSize:(int32_t)size completionHandler:(void (^)(KASCKtor_ioByteReadPacket * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readPacket(size:completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readRemainingLimit:(int64_t)limit completionHandler:(void (^)(KASCKtor_ioByteReadPacket * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readRemaining(limit:completionHandler:)"))); +- (void)readSessionConsumer:(void (^)(id))consumer __attribute__((swift_name("readSession(consumer:)"))) __attribute__((deprecated("Use read { } instead."))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readShortWithCompletionHandler:(void (^)(KASCShort * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readShort(completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readSuspendableSessionConsumer:(id)consumer completionHandler:(void (^)(NSError * _Nullable))completionHandler __attribute__((swift_name("readSuspendableSession(consumer:completionHandler:)"))) __attribute__((deprecated("Use read { } instead."))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readUTF8LineLimit:(int32_t)limit completionHandler:(void (^)(NSString * _Nullable_result, NSError * _Nullable))completionHandler __attribute__((swift_name("readUTF8Line(limit:completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readUTF8LineToOut:(id)out limit:(int32_t)limit completionHandler:(void (^)(KASCBoolean * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readUTF8LineTo(out:limit:completionHandler:)"))); +@property (readonly) int32_t availableForRead __attribute__((swift_name("availableForRead"))); +@property (readonly) KASCKotlinThrowable * _Nullable closedCause __attribute__((swift_name("closedCause"))); +@property (readonly) BOOL isClosedForRead __attribute__((swift_name("isClosedForRead"))); +@property (readonly) BOOL isClosedForWrite __attribute__((swift_name("isClosedForWrite"))); +@property (readonly) int64_t totalBytesRead __attribute__((swift_name("totalBytesRead"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_utilsGMTDate"))) +@interface KASCKtor_utilsGMTDate : KASCBase +@property (class, readonly, getter=companion) KASCKtor_utilsGMTDateCompanion *companion __attribute__((swift_name("companion"))); +- (int32_t)compareToOther:(KASCKtor_utilsGMTDate *)other __attribute__((swift_name("compareTo(other:)"))); +- (KASCKtor_utilsGMTDate *)doCopySeconds:(int32_t)seconds minutes:(int32_t)minutes hours:(int32_t)hours dayOfWeek:(KASCKtor_utilsWeekDay *)dayOfWeek dayOfMonth:(int32_t)dayOfMonth dayOfYear:(int32_t)dayOfYear month:(KASCKtor_utilsMonth *)month year:(int32_t)year timestamp:(int64_t)timestamp __attribute__((swift_name("doCopy(seconds:minutes:hours:dayOfWeek:dayOfMonth:dayOfYear:month:year:timestamp:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) int32_t dayOfMonth __attribute__((swift_name("dayOfMonth"))); +@property (readonly) KASCKtor_utilsWeekDay *dayOfWeek __attribute__((swift_name("dayOfWeek"))); +@property (readonly) int32_t dayOfYear __attribute__((swift_name("dayOfYear"))); +@property (readonly) int32_t hours __attribute__((swift_name("hours"))); +@property (readonly) int32_t minutes __attribute__((swift_name("minutes"))); +@property (readonly) KASCKtor_utilsMonth *month __attribute__((swift_name("month"))); +@property (readonly) int32_t seconds __attribute__((swift_name("seconds"))); +@property (readonly) int64_t timestamp __attribute__((swift_name("timestamp"))); +@property (readonly) int32_t year __attribute__((swift_name("year"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpHttpStatusCode"))) +@interface KASCKtor_httpHttpStatusCode : KASCBase +- (instancetype)initWithValue:(int32_t)value description:(NSString *)description __attribute__((swift_name("init(value:description:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKtor_httpHttpStatusCodeCompanion *companion __attribute__((swift_name("companion"))); +- (KASCKtor_httpHttpStatusCode *)doCopyValue:(int32_t)value description:(NSString *)description __attribute__((swift_name("doCopy(value:description:)"))); +- (KASCKtor_httpHttpStatusCode *)descriptionValue:(NSString *)value __attribute__((swift_name("description(value:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *description_ __attribute__((swift_name("description_"))); +@property (readonly) int32_t value __attribute__((swift_name("value"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpHttpProtocolVersion"))) +@interface KASCKtor_httpHttpProtocolVersion : KASCBase +- (instancetype)initWithName:(NSString *)name major:(int32_t)major minor:(int32_t)minor __attribute__((swift_name("init(name:major:minor:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKtor_httpHttpProtocolVersionCompanion *companion __attribute__((swift_name("companion"))); +- (KASCKtor_httpHttpProtocolVersion *)doCopyName:(NSString *)name major:(int32_t)major minor:(int32_t)minor __attribute__((swift_name("doCopy(name:major:minor:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) int32_t major __attribute__((swift_name("major"))); +@property (readonly) int32_t minor __attribute__((swift_name("minor"))); +@property (readonly) NSString *name __attribute__((swift_name("name"))); +@end + +__attribute__((swift_name("Kotlinx_serialization_coreCompositeEncoder"))) +@protocol KASCKotlinx_serialization_coreCompositeEncoder +@required +- (void)encodeBooleanElementDescriptor:(id)descriptor index:(int32_t)index value:(BOOL)value __attribute__((swift_name("encodeBooleanElement(descriptor:index:value:)"))); +- (void)encodeByteElementDescriptor:(id)descriptor index:(int32_t)index value:(int8_t)value __attribute__((swift_name("encodeByteElement(descriptor:index:value:)"))); +- (void)encodeCharElementDescriptor:(id)descriptor index:(int32_t)index value:(unichar)value __attribute__((swift_name("encodeCharElement(descriptor:index:value:)"))); +- (void)encodeDoubleElementDescriptor:(id)descriptor index:(int32_t)index value:(double)value __attribute__((swift_name("encodeDoubleElement(descriptor:index:value:)"))); +- (void)encodeFloatElementDescriptor:(id)descriptor index:(int32_t)index value:(float)value __attribute__((swift_name("encodeFloatElement(descriptor:index:value:)"))); +- (id)encodeInlineElementDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("encodeInlineElement(descriptor:index:)"))); +- (void)encodeIntElementDescriptor:(id)descriptor index:(int32_t)index value:(int32_t)value __attribute__((swift_name("encodeIntElement(descriptor:index:value:)"))); +- (void)encodeLongElementDescriptor:(id)descriptor index:(int32_t)index value:(int64_t)value __attribute__((swift_name("encodeLongElement(descriptor:index:value:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (void)encodeNullableSerializableElementDescriptor:(id)descriptor index:(int32_t)index serializer:(id)serializer value:(id _Nullable)value __attribute__((swift_name("encodeNullableSerializableElement(descriptor:index:serializer:value:)"))); +- (void)encodeSerializableElementDescriptor:(id)descriptor index:(int32_t)index serializer:(id)serializer value:(id _Nullable)value __attribute__((swift_name("encodeSerializableElement(descriptor:index:serializer:value:)"))); +- (void)encodeShortElementDescriptor:(id)descriptor index:(int32_t)index value:(int16_t)value __attribute__((swift_name("encodeShortElement(descriptor:index:value:)"))); +- (void)encodeStringElementDescriptor:(id)descriptor index:(int32_t)index value:(NSString *)value __attribute__((swift_name("encodeStringElement(descriptor:index:value:)"))); +- (void)endStructureDescriptor:(id)descriptor __attribute__((swift_name("endStructure(descriptor:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (BOOL)shouldEncodeElementDefaultDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("shouldEncodeElementDefault(descriptor:index:)"))); +@property (readonly) KASCKotlinx_serialization_coreSerializersModule *serializersModule __attribute__((swift_name("serializersModule"))); +@end + +__attribute__((swift_name("Kotlinx_serialization_coreSerializersModule"))) +@interface KASCKotlinx_serialization_coreSerializersModule : KASCBase + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (void)dumpToCollector:(id)collector __attribute__((swift_name("dumpTo(collector:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (id _Nullable)getContextualKClass:(id)kClass typeArgumentsSerializers:(NSArray> *)typeArgumentsSerializers __attribute__((swift_name("getContextual(kClass:typeArgumentsSerializers:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (id _Nullable)getPolymorphicBaseClass:(id)baseClass value:(id)value __attribute__((swift_name("getPolymorphic(baseClass:value:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (id _Nullable)getPolymorphicBaseClass:(id)baseClass serializedClassName:(NSString * _Nullable)serializedClassName __attribute__((swift_name("getPolymorphic(baseClass:serializedClassName:)"))); +@end + +__attribute__((swift_name("KotlinAnnotation"))) +@protocol KASCKotlinAnnotation +@required +@end + + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +__attribute__((swift_name("Kotlinx_serialization_coreSerialKind"))) +@interface KASCKotlinx_serialization_coreSerialKind : KASCBase +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@end + +__attribute__((swift_name("Kotlinx_serialization_coreCompositeDecoder"))) +@protocol KASCKotlinx_serialization_coreCompositeDecoder +@required +- (BOOL)decodeBooleanElementDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("decodeBooleanElement(descriptor:index:)"))); +- (int8_t)decodeByteElementDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("decodeByteElement(descriptor:index:)"))); +- (unichar)decodeCharElementDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("decodeCharElement(descriptor:index:)"))); +- (int32_t)decodeCollectionSizeDescriptor:(id)descriptor __attribute__((swift_name("decodeCollectionSize(descriptor:)"))); +- (double)decodeDoubleElementDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("decodeDoubleElement(descriptor:index:)"))); +- (int32_t)decodeElementIndexDescriptor:(id)descriptor __attribute__((swift_name("decodeElementIndex(descriptor:)"))); +- (float)decodeFloatElementDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("decodeFloatElement(descriptor:index:)"))); +- (id)decodeInlineElementDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("decodeInlineElement(descriptor:index:)"))); +- (int32_t)decodeIntElementDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("decodeIntElement(descriptor:index:)"))); +- (int64_t)decodeLongElementDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("decodeLongElement(descriptor:index:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (id _Nullable)decodeNullableSerializableElementDescriptor:(id)descriptor index:(int32_t)index deserializer:(id)deserializer previousValue:(id _Nullable)previousValue __attribute__((swift_name("decodeNullableSerializableElement(descriptor:index:deserializer:previousValue:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (BOOL)decodeSequentially __attribute__((swift_name("decodeSequentially()"))); +- (id _Nullable)decodeSerializableElementDescriptor:(id)descriptor index:(int32_t)index deserializer:(id)deserializer previousValue:(id _Nullable)previousValue __attribute__((swift_name("decodeSerializableElement(descriptor:index:deserializer:previousValue:)"))); +- (int16_t)decodeShortElementDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("decodeShortElement(descriptor:index:)"))); +- (NSString *)decodeStringElementDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("decodeStringElement(descriptor:index:)"))); +- (void)endStructureDescriptor:(id)descriptor __attribute__((swift_name("endStructure(descriptor:)"))); +@property (readonly) KASCKotlinx_serialization_coreSerializersModule *serializersModule __attribute__((swift_name("serializersModule"))); +@end + +__attribute__((swift_name("KotlinMapEntry"))) +@protocol KASCKotlinMapEntry +@required +@property (readonly) id _Nullable key __attribute__((swift_name("key"))); +@property (readonly) id _Nullable value __attribute__((swift_name("value"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpUrl"))) +@interface KASCKtor_httpUrl : KASCBase +@property (class, readonly, getter=companion) KASCKtor_httpUrlCompanion *companion __attribute__((swift_name("companion"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *encodedFragment __attribute__((swift_name("encodedFragment"))); +@property (readonly) NSString * _Nullable encodedPassword __attribute__((swift_name("encodedPassword"))); +@property (readonly) NSString *encodedPath __attribute__((swift_name("encodedPath"))); +@property (readonly) NSString *encodedPathAndQuery __attribute__((swift_name("encodedPathAndQuery"))); +@property (readonly) NSString *encodedQuery __attribute__((swift_name("encodedQuery"))); +@property (readonly) NSString * _Nullable encodedUser __attribute__((swift_name("encodedUser"))); +@property (readonly) NSString *fragment __attribute__((swift_name("fragment"))); +@property (readonly) NSString *host __attribute__((swift_name("host"))); +@property (readonly) id parameters __attribute__((swift_name("parameters"))); +@property (readonly) NSString * _Nullable password __attribute__((swift_name("password"))); +@property (readonly) NSArray *pathSegments __attribute__((swift_name("pathSegments"))); +@property (readonly) int32_t port __attribute__((swift_name("port"))); +@property (readonly) KASCKtor_httpURLProtocol *protocol __attribute__((swift_name("protocol"))); +@property (readonly) int32_t specifiedPort __attribute__((swift_name("specifiedPort"))); +@property (readonly) BOOL trailingQuery __attribute__((swift_name("trailingQuery"))); +@property (readonly) NSString * _Nullable user __attribute__((swift_name("user"))); +@end + +__attribute__((swift_name("Ktor_httpOutgoingContent"))) +@interface KASCKtor_httpOutgoingContent : KASCBase +- (id _Nullable)getPropertyKey:(KASCKtor_utilsAttributeKey *)key __attribute__((swift_name("getProperty(key:)"))); +- (void)setPropertyKey:(KASCKtor_utilsAttributeKey *)key value:(id _Nullable)value __attribute__((swift_name("setProperty(key:value:)"))); +- (id _Nullable)trailers __attribute__((swift_name("trailers()"))); +@property (readonly) KASCLong * _Nullable contentLength __attribute__((swift_name("contentLength"))); +@property (readonly) KASCKtor_httpContentType * _Nullable contentType __attribute__((swift_name("contentType"))); +@property (readonly) id headers __attribute__((swift_name("headers"))); +@property (readonly) KASCKtor_httpHttpStatusCode * _Nullable status __attribute__((swift_name("status"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_utilsAttributeKey"))) +@interface KASCKtor_utilsAttributeKey : KASCBase +- (instancetype)initWithName:(NSString *)name __attribute__((swift_name("init(name:)"))) __attribute__((objc_designated_initializer)); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpURLProtocol"))) +@interface KASCKtor_httpURLProtocol : KASCBase +- (instancetype)initWithName:(NSString *)name defaultPort:(int32_t)defaultPort __attribute__((swift_name("init(name:defaultPort:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKtor_httpURLProtocolCompanion *companion __attribute__((swift_name("companion"))); +- (KASCKtor_httpURLProtocol *)doCopyName:(NSString *)name defaultPort:(int32_t)defaultPort __attribute__((swift_name("doCopy(name:defaultPort:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) int32_t defaultPort __attribute__((swift_name("defaultPort"))); +@property (readonly) NSString *name __attribute__((swift_name("name"))); +@end + +__attribute__((swift_name("Ktor_httpParameters"))) +@protocol KASCKtor_httpParameters +@required +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpURLBuilder.Companion"))) +@interface KASCKtor_httpURLBuilderCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_httpURLBuilderCompanion *shared __attribute__((swift_name("shared"))); +@end + +__attribute__((swift_name("Ktor_httpParametersBuilder"))) +@protocol KASCKtor_httpParametersBuilder +@required +@end + +__attribute__((swift_name("KotlinKDeclarationContainer"))) +@protocol KASCKotlinKDeclarationContainer +@required +@end + +__attribute__((swift_name("KotlinKAnnotatedElement"))) +@protocol KASCKotlinKAnnotatedElement +@required +@end + + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.1") +*/ +__attribute__((swift_name("KotlinKClassifier"))) +@protocol KASCKotlinKClassifier +@required +@end + +__attribute__((swift_name("KotlinKClass"))) +@protocol KASCKotlinKClass +@required + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.1") +*/ +- (BOOL)isInstanceValue:(id _Nullable)value __attribute__((swift_name("isInstance(value:)"))); +@property (readonly) NSString * _Nullable qualifiedName __attribute__((swift_name("qualifiedName"))); +@property (readonly) NSString * _Nullable simpleName __attribute__((swift_name("simpleName"))); +@end + +__attribute__((swift_name("KotlinKType"))) +@protocol KASCKotlinKType +@required + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.1") +*/ +@property (readonly) NSArray *arguments __attribute__((swift_name("arguments"))); + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.1") +*/ +@property (readonly) id _Nullable classifier __attribute__((swift_name("classifier"))); +@property (readonly) BOOL isMarkedNullable __attribute__((swift_name("isMarkedNullable"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreDisposableHandle"))) +@protocol KASCKotlinx_coroutines_coreDisposableHandle +@required +- (void)dispose __attribute__((swift_name("dispose()"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreChildHandle"))) +@protocol KASCKotlinx_coroutines_coreChildHandle +@required +- (BOOL)childCancelledCause:(KASCKotlinThrowable *)cause __attribute__((swift_name("childCancelled(cause:)"))); +@property (readonly) id _Nullable parent __attribute__((swift_name("parent"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreChildJob"))) +@protocol KASCKotlinx_coroutines_coreChildJob +@required +- (void)parentCancelledParentJob:(id)parentJob __attribute__((swift_name("parentCancelled(parentJob:)"))); +@end + +__attribute__((swift_name("KotlinSequence"))) +@protocol KASCKotlinSequence +@required +- (id)iterator __attribute__((swift_name("iterator()"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreSelectClause0"))) +@protocol KASCKotlinx_coroutines_coreSelectClause0 +@required +- (void)registerSelectClause0Select:(id)select block:(id)block __attribute__((swift_name("registerSelectClause0(select:block:)"))); +@end + +__attribute__((swift_name("KotlinCoroutineContextKey"))) +@protocol KASCKotlinCoroutineContextKey +@required +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpHttpMethod.Companion"))) +@interface KASCKtor_httpHttpMethodCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_httpHttpMethodCompanion *shared __attribute__((swift_name("shared"))); +- (KASCKtor_httpHttpMethod *)parseMethod:(NSString *)method __attribute__((swift_name("parse(method:)"))); +@property (readonly) NSArray *DefaultMethods __attribute__((swift_name("DefaultMethods"))); +@property (readonly) KASCKtor_httpHttpMethod *Delete __attribute__((swift_name("Delete"))); +@property (readonly) KASCKtor_httpHttpMethod *Get __attribute__((swift_name("Get"))); +@property (readonly) KASCKtor_httpHttpMethod *Head __attribute__((swift_name("Head"))); +@property (readonly) KASCKtor_httpHttpMethod *Options __attribute__((swift_name("Options"))); +@property (readonly) KASCKtor_httpHttpMethod *Patch __attribute__((swift_name("Patch"))); +@property (readonly) KASCKtor_httpHttpMethod *Post __attribute__((swift_name("Post"))); +@property (readonly) KASCKtor_httpHttpMethod *Put __attribute__((swift_name("Put"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpResponseData"))) +@interface KASCKtor_client_coreHttpResponseData : KASCBase +- (instancetype)initWithStatusCode:(KASCKtor_httpHttpStatusCode *)statusCode requestTime:(KASCKtor_utilsGMTDate *)requestTime headers:(id)headers version:(KASCKtor_httpHttpProtocolVersion *)version body:(id)body callContext:(id)callContext __attribute__((swift_name("init(statusCode:requestTime:headers:version:body:callContext:)"))) __attribute__((objc_designated_initializer)); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) id body __attribute__((swift_name("body"))); +@property (readonly) id callContext __attribute__((swift_name("callContext"))); +@property (readonly) id headers __attribute__((swift_name("headers"))); +@property (readonly) KASCKtor_utilsGMTDate *requestTime __attribute__((swift_name("requestTime"))); +@property (readonly) KASCKtor_utilsGMTDate *responseTime __attribute__((swift_name("responseTime"))); +@property (readonly) KASCKtor_httpHttpStatusCode *statusCode __attribute__((swift_name("statusCode"))); +@property (readonly) KASCKtor_httpHttpProtocolVersion *version __attribute__((swift_name("version"))); +@end + + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.3") +*/ +__attribute__((swift_name("KotlinAbstractCoroutineContextElement"))) +@interface KASCKotlinAbstractCoroutineContextElement : KASCBase +- (instancetype)initWithKey:(id)key __attribute__((swift_name("init(key:)"))) __attribute__((objc_designated_initializer)); +@property (readonly) id key __attribute__((swift_name("key"))); +@end + + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.3") +*/ +__attribute__((swift_name("KotlinContinuationInterceptor"))) +@protocol KASCKotlinContinuationInterceptor +@required +- (id)interceptContinuationContinuation:(id)continuation __attribute__((swift_name("interceptContinuation(continuation:)"))); +- (void)releaseInterceptedContinuationContinuation:(id)continuation __attribute__((swift_name("releaseInterceptedContinuation(continuation:)"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreCoroutineDispatcher"))) +@interface KASCKotlinx_coroutines_coreCoroutineDispatcher : KASCKotlinAbstractCoroutineContextElement +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (instancetype)initWithKey:(id)key __attribute__((swift_name("init(key:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCKotlinx_coroutines_coreCoroutineDispatcherKey *companion __attribute__((swift_name("companion"))); +- (void)dispatchContext:(id)context block:(id)block __attribute__((swift_name("dispatch(context:block:)"))); +- (void)dispatchYieldContext:(id)context block:(id)block __attribute__((swift_name("dispatchYield(context:block:)"))); +- (id)interceptContinuationContinuation:(id)continuation __attribute__((swift_name("interceptContinuation(continuation:)"))); +- (BOOL)isDispatchNeededContext:(id)context __attribute__((swift_name("isDispatchNeeded(context:)"))); + +/** + * @note annotations + * kotlinx.coroutines.ExperimentalCoroutinesApi +*/ +- (KASCKotlinx_coroutines_coreCoroutineDispatcher *)limitedParallelismParallelism:(int32_t)parallelism __attribute__((swift_name("limitedParallelism(parallelism:)"))); +- (KASCKotlinx_coroutines_coreCoroutineDispatcher *)plusOther_:(KASCKotlinx_coroutines_coreCoroutineDispatcher *)other __attribute__((swift_name("plus(other_:)"))) __attribute__((unavailable("Operator '+' on two CoroutineDispatcher objects is meaningless. CoroutineDispatcher is a coroutine context element and `+` is a set-sum operator for coroutine contexts. The dispatcher to the right of `+` just replaces the dispatcher to the left."))); +- (void)releaseInterceptedContinuationContinuation:(id)continuation __attribute__((swift_name("releaseInterceptedContinuation(continuation:)"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreProxyConfig"))) +@interface KASCKtor_client_coreProxyConfig : KASCBase +- (instancetype)initWithUrl:(KASCKtor_httpUrl *)url __attribute__((swift_name("init(url:)"))) __attribute__((objc_designated_initializer)); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCKtor_httpUrl *url __attribute__((swift_name("url"))); +@end + +__attribute__((swift_name("Ktor_client_coreHttpClientPlugin"))) +@protocol KASCKtor_client_coreHttpClientPlugin +@required +- (void)installPlugin:(id)plugin scope:(KASCKtor_client_coreHttpClient *)scope __attribute__((swift_name("install(plugin:scope:)"))); +- (id)prepareBlock:(void (^)(id))block __attribute__((swift_name("prepare(block:)"))); +@property (readonly) KASCKtor_utilsAttributeKey *key __attribute__((swift_name("key"))); +@end + +__attribute__((swift_name("Ktor_eventsEventDefinition"))) +@interface KASCKtor_eventsEventDefinition : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_utilsPipelinePhase"))) +@interface KASCKtor_utilsPipelinePhase : KASCBase +- (instancetype)initWithName:(NSString *)name __attribute__((swift_name("init(name:)"))) __attribute__((objc_designated_initializer)); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *name __attribute__((swift_name("name"))); +@end + +__attribute__((swift_name("KotlinSuspendFunction2"))) +@protocol KASCKotlinSuspendFunction2 +@required + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)invokeP1:(id _Nullable)p1 p2:(id _Nullable)p2 completionHandler:(void (^)(id _Nullable_result, NSError * _Nullable))completionHandler __attribute__((swift_name("invoke(p1:p2:completionHandler:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpReceivePipeline.Phases"))) +@interface KASCKtor_client_coreHttpReceivePipelinePhases : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)phases __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_client_coreHttpReceivePipelinePhases *shared __attribute__((swift_name("shared"))); +@property (readonly) KASCKtor_utilsPipelinePhase *After __attribute__((swift_name("After"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Before __attribute__((swift_name("Before"))); +@property (readonly) KASCKtor_utilsPipelinePhase *State __attribute__((swift_name("State"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpRequestPipeline.Phases"))) +@interface KASCKtor_client_coreHttpRequestPipelinePhases : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)phases __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_client_coreHttpRequestPipelinePhases *shared __attribute__((swift_name("shared"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Before __attribute__((swift_name("Before"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Render __attribute__((swift_name("Render"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Send __attribute__((swift_name("Send"))); +@property (readonly) KASCKtor_utilsPipelinePhase *State __attribute__((swift_name("State"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Transform __attribute__((swift_name("Transform"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpResponsePipeline.Phases"))) +@interface KASCKtor_client_coreHttpResponsePipelinePhases : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)phases __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_client_coreHttpResponsePipelinePhases *shared __attribute__((swift_name("shared"))); +@property (readonly) KASCKtor_utilsPipelinePhase *After __attribute__((swift_name("After"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Parse __attribute__((swift_name("Parse"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Receive __attribute__((swift_name("Receive"))); +@property (readonly) KASCKtor_utilsPipelinePhase *State __attribute__((swift_name("State"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Transform __attribute__((swift_name("Transform"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpResponseContainer"))) +@interface KASCKtor_client_coreHttpResponseContainer : KASCBase +- (instancetype)initWithExpectedType:(KASCKtor_utilsTypeInfo *)expectedType response:(id)response __attribute__((swift_name("init(expectedType:response:)"))) __attribute__((objc_designated_initializer)); +- (KASCKtor_client_coreHttpResponseContainer *)doCopyExpectedType:(KASCKtor_utilsTypeInfo *)expectedType response:(id)response __attribute__((swift_name("doCopy(expectedType:response:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCKtor_utilsTypeInfo *expectedType __attribute__((swift_name("expectedType"))); +@property (readonly) id response __attribute__((swift_name("response"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpSendPipeline.Phases"))) +@interface KASCKtor_client_coreHttpSendPipelinePhases : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)phases __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_client_coreHttpSendPipelinePhases *shared __attribute__((swift_name("shared"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Before __attribute__((swift_name("Before"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Engine __attribute__((swift_name("Engine"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Monitoring __attribute__((swift_name("Monitoring"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Receive __attribute__((swift_name("Receive"))); +@property (readonly) KASCKtor_utilsPipelinePhase *State __attribute__((swift_name("State"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpClientCall.Companion"))) +@interface KASCKtor_client_coreHttpClientCallCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_client_coreHttpClientCallCompanion *shared __attribute__((swift_name("shared"))); +@property (readonly) KASCKtor_utilsAttributeKey *CustomResponse __attribute__((swift_name("CustomResponse"))) __attribute__((unavailable("This is going to be removed. Please file a ticket with clarification why and what for do you need it."))); +@end + +__attribute__((swift_name("Ktor_client_coreHttpRequest"))) +@protocol KASCKtor_client_coreHttpRequest +@required +@property (readonly) id attributes __attribute__((swift_name("attributes"))); +@property (readonly) KASCKtor_client_coreHttpClientCall *call __attribute__((swift_name("call"))); +@property (readonly) KASCKtor_httpOutgoingContent *content __attribute__((swift_name("content"))); +@property (readonly) KASCKtor_httpHttpMethod *method __attribute__((swift_name("method"))); +@property (readonly) KASCKtor_httpUrl *url __attribute__((swift_name("url"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_ioMemory"))) +@interface KASCKtor_ioMemory : KASCBase +- (instancetype)initWithPointer:(void *)pointer size:(int64_t)size __attribute__((swift_name("init(pointer:size:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKtor_ioMemoryCompanion *companion __attribute__((swift_name("companion"))); +- (void)doCopyToDestination:(KASCKtor_ioMemory *)destination offset:(int32_t)offset length:(int32_t)length destinationOffset:(int32_t)destinationOffset __attribute__((swift_name("doCopyTo(destination:offset:length:destinationOffset:)"))); +- (void)doCopyToDestination:(KASCKtor_ioMemory *)destination offset:(int64_t)offset length:(int64_t)length destinationOffset_:(int64_t)destinationOffset __attribute__((swift_name("doCopyTo(destination:offset:length:destinationOffset_:)"))); +- (int8_t)loadAtIndex:(int32_t)index __attribute__((swift_name("loadAt(index:)"))); +- (int8_t)loadAtIndex_:(int64_t)index __attribute__((swift_name("loadAt(index_:)"))); +- (KASCKtor_ioMemory *)sliceOffset:(int32_t)offset length:(int32_t)length __attribute__((swift_name("slice(offset:length:)"))); +- (KASCKtor_ioMemory *)sliceOffset:(int64_t)offset length_:(int64_t)length __attribute__((swift_name("slice(offset:length_:)"))); +- (void)storeAtIndex:(int32_t)index value:(int8_t)value __attribute__((swift_name("storeAt(index:value:)"))); +- (void)storeAtIndex:(int64_t)index value_:(int8_t)value __attribute__((swift_name("storeAt(index:value_:)"))); +@property (readonly) void *pointer __attribute__((swift_name("pointer"))); +@property (readonly) int64_t size __attribute__((swift_name("size"))); +@property (readonly) int32_t size32 __attribute__((swift_name("size32"))); +@end + +__attribute__((swift_name("Ktor_ioBuffer"))) +@interface KASCKtor_ioBuffer : KASCBase +- (instancetype)initWithMemory:(KASCKtor_ioMemory *)memory __attribute__((swift_name("init(memory:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKtor_ioBufferCompanion *companion __attribute__((swift_name("companion"))); +- (void)commitWrittenCount:(int32_t)count __attribute__((swift_name("commitWritten(count:)"))); +- (void)discardExactCount:(int32_t)count __attribute__((swift_name("discardExact(count:)"))); +- (KASCKtor_ioBuffer *)duplicate __attribute__((swift_name("duplicate()"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)duplicateToCopy:(KASCKtor_ioBuffer *)copy __attribute__((swift_name("duplicateTo(copy:)"))); +- (int8_t)readByte __attribute__((swift_name("readByte()"))); +- (void)reserveEndGapEndGap:(int32_t)endGap __attribute__((swift_name("reserveEndGap(endGap:)"))); +- (void)reserveStartGapStartGap:(int32_t)startGap __attribute__((swift_name("reserveStartGap(startGap:)"))); +- (void)reset __attribute__((swift_name("reset()"))); +- (void)resetForRead __attribute__((swift_name("resetForRead()"))); +- (void)resetForWrite __attribute__((swift_name("resetForWrite()"))); +- (void)resetForWriteLimit:(int32_t)limit __attribute__((swift_name("resetForWrite(limit:)"))); +- (void)rewindCount:(int32_t)count __attribute__((swift_name("rewind(count:)"))); +- (NSString *)description __attribute__((swift_name("description()"))); +- (int32_t)tryPeekByte __attribute__((swift_name("tryPeekByte()"))); +- (int32_t)tryReadByte __attribute__((swift_name("tryReadByte()"))); +- (void)writeByteValue:(int8_t)value __attribute__((swift_name("writeByte(value:)"))); +@property (readonly) int32_t capacity __attribute__((swift_name("capacity"))); +@property (readonly) int32_t endGap __attribute__((swift_name("endGap"))); +@property (readonly) int32_t limit __attribute__((swift_name("limit"))); +@property (readonly) KASCKtor_ioMemory *memory __attribute__((swift_name("memory"))); +@property (readonly) int32_t readPosition __attribute__((swift_name("readPosition"))); +@property (readonly) int32_t readRemaining __attribute__((swift_name("readRemaining"))); +@property (readonly) int32_t startGap __attribute__((swift_name("startGap"))); +@property (readonly) int32_t writePosition __attribute__((swift_name("writePosition"))); +@property (readonly) int32_t writeRemaining __attribute__((swift_name("writeRemaining"))); +@end + +__attribute__((swift_name("Ktor_ioChunkBuffer"))) +@interface KASCKtor_ioChunkBuffer : KASCKtor_ioBuffer +- (instancetype)initWithMemory:(KASCKtor_ioMemory *)memory origin:(KASCKtor_ioChunkBuffer * _Nullable)origin parentPool:(id _Nullable)parentPool __attribute__((swift_name("init(memory:origin:parentPool:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithMemory:(KASCKtor_ioMemory *)memory __attribute__((swift_name("init(memory:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCKtor_ioChunkBufferCompanion *companion __attribute__((swift_name("companion"))); +- (KASCKtor_ioChunkBuffer * _Nullable)cleanNext __attribute__((swift_name("cleanNext()"))); +- (KASCKtor_ioChunkBuffer *)duplicate __attribute__((swift_name("duplicate()"))); +- (void)releasePool:(id)pool __attribute__((swift_name("release(pool:)"))); +- (void)reset __attribute__((swift_name("reset()"))); +@property (getter=next_) KASCKtor_ioChunkBuffer * _Nullable next __attribute__((swift_name("next"))); +@property (readonly) KASCKtor_ioChunkBuffer * _Nullable origin __attribute__((swift_name("origin"))); +@property (readonly) int32_t referenceCount __attribute__((swift_name("referenceCount"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("KotlinByteArray"))) +@interface KASCKotlinByteArray : KASCBase ++ (instancetype)arrayWithSize:(int32_t)size __attribute__((swift_name("init(size:)"))); ++ (instancetype)arrayWithSize:(int32_t)size init:(KASCByte *(^)(KASCInt *))init __attribute__((swift_name("init(size:init:)"))); ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); +- (int8_t)getIndex:(int32_t)index __attribute__((swift_name("get(index:)"))); +- (KASCKotlinByteIterator *)iterator __attribute__((swift_name("iterator()"))); +- (void)setIndex:(int32_t)index value:(int8_t)value __attribute__((swift_name("set(index:value:)"))); +@property (readonly) int32_t size __attribute__((swift_name("size"))); +@end + +__attribute__((swift_name("Ktor_ioInput"))) +@interface KASCKtor_ioInput : KASCBase +- (instancetype)initWithHead:(KASCKtor_ioChunkBuffer *)head remaining:(int64_t)remaining pool:(id)pool __attribute__((swift_name("init(head:remaining:pool:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKtor_ioInputCompanion *companion __attribute__((swift_name("companion"))); +- (BOOL)canRead __attribute__((swift_name("canRead()"))); +- (void)close __attribute__((swift_name("close()"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)closeSource __attribute__((swift_name("closeSource()"))); +- (int32_t)discardN:(int32_t)n __attribute__((swift_name("discard(n:)"))); +- (int64_t)discardN_:(int64_t)n __attribute__((swift_name("discard(n_:)"))); +- (void)discardExactN:(int32_t)n __attribute__((swift_name("discardExact(n:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (KASCKtor_ioChunkBuffer * _Nullable)fill __attribute__((swift_name("fill()"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (int32_t)fillDestination:(KASCKtor_ioMemory *)destination offset:(int32_t)offset length:(int32_t)length __attribute__((swift_name("fill(destination:offset:length:)"))); +- (BOOL)hasBytesN:(int32_t)n __attribute__((swift_name("hasBytes(n:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)markNoMoreChunksAvailable __attribute__((swift_name("markNoMoreChunksAvailable()"))); +- (int64_t)peekToDestination:(KASCKtor_ioMemory *)destination destinationOffset:(int64_t)destinationOffset offset:(int64_t)offset min:(int64_t)min max:(int64_t)max __attribute__((swift_name("peekTo(destination:destinationOffset:offset:min:max:)"))); +- (int32_t)peekToBuffer:(KASCKtor_ioChunkBuffer *)buffer __attribute__((swift_name("peekTo(buffer:)"))); +- (int8_t)readByte __attribute__((swift_name("readByte()"))); +- (NSString *)readTextMin:(int32_t)min max:(int32_t)max __attribute__((swift_name("readText(min:max:)"))); +- (int32_t)readTextOut:(id)out min:(int32_t)min max:(int32_t)max __attribute__((swift_name("readText(out:min:max:)"))); +- (NSString *)readTextExactExactCharacters:(int32_t)exactCharacters __attribute__((swift_name("readTextExact(exactCharacters:)"))); +- (void)readTextExactOut:(id)out exactCharacters:(int32_t)exactCharacters __attribute__((swift_name("readTextExact(out:exactCharacters:)"))); +- (void)release_ __attribute__((swift_name("release()"))); +- (int32_t)tryPeek __attribute__((swift_name("tryPeek()"))); +@property (readonly) BOOL endOfInput __attribute__((swift_name("endOfInput"))); +@property (readonly) id pool __attribute__((swift_name("pool"))); +@property (readonly) int64_t remaining __attribute__((swift_name("remaining"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_ioByteReadPacket"))) +@interface KASCKtor_ioByteReadPacket : KASCKtor_ioInput +- (instancetype)initWithHead:(KASCKtor_ioChunkBuffer *)head pool:(id)pool __attribute__((swift_name("init(head:pool:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithHead:(KASCKtor_ioChunkBuffer *)head remaining:(int64_t)remaining pool:(id)pool __attribute__((swift_name("init(head:remaining:pool:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCKtor_ioByteReadPacketCompanion *companion __attribute__((swift_name("companion"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)closeSource __attribute__((swift_name("closeSource()"))); +- (KASCKtor_ioByteReadPacket *)doCopy __attribute__((swift_name("doCopy()"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (KASCKtor_ioChunkBuffer * _Nullable)fill __attribute__((swift_name("fill()"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (int32_t)fillDestination:(KASCKtor_ioMemory *)destination offset:(int32_t)offset length:(int32_t)length __attribute__((swift_name("fill(destination:offset:length:)"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@end + +__attribute__((swift_name("Ktor_ioReadSession"))) +@protocol KASCKtor_ioReadSession +@required +- (int32_t)discardN:(int32_t)n __attribute__((swift_name("discard(n:)"))); +- (KASCKtor_ioChunkBuffer * _Nullable)requestAtLeast:(int32_t)atLeast __attribute__((swift_name("request(atLeast:)"))); +@property (readonly) int32_t availableForRead __attribute__((swift_name("availableForRead"))); +@end + +__attribute__((swift_name("KotlinSuspendFunction1"))) +@protocol KASCKotlinSuspendFunction1 +@required + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)invokeP1:(id _Nullable)p1 completionHandler:(void (^)(id _Nullable_result, NSError * _Nullable))completionHandler __attribute__((swift_name("invoke(p1:completionHandler:)"))); +@end + +__attribute__((swift_name("KotlinAppendable"))) +@protocol KASCKotlinAppendable +@required +- (id)appendValue:(unichar)value __attribute__((swift_name("append(value:)"))); +- (id)appendValue_:(id _Nullable)value __attribute__((swift_name("append(value_:)"))); +- (id)appendValue:(id _Nullable)value startIndex:(int32_t)startIndex endIndex:(int32_t)endIndex __attribute__((swift_name("append(value:startIndex:endIndex:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_utilsGMTDate.Companion"))) +@interface KASCKtor_utilsGMTDateCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_utilsGMTDateCompanion *shared __attribute__((swift_name("shared"))); +@property (readonly) KASCKtor_utilsGMTDate *START __attribute__((swift_name("START"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_utilsWeekDay"))) +@interface KASCKtor_utilsWeekDay : KASCKotlinEnum ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); +- (instancetype)initWithName:(NSString *)name ordinal:(int32_t)ordinal __attribute__((swift_name("init(name:ordinal:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCKtor_utilsWeekDayCompanion *companion __attribute__((swift_name("companion"))); +@property (class, readonly) KASCKtor_utilsWeekDay *monday __attribute__((swift_name("monday"))); +@property (class, readonly) KASCKtor_utilsWeekDay *tuesday __attribute__((swift_name("tuesday"))); +@property (class, readonly) KASCKtor_utilsWeekDay *wednesday __attribute__((swift_name("wednesday"))); +@property (class, readonly) KASCKtor_utilsWeekDay *thursday __attribute__((swift_name("thursday"))); +@property (class, readonly) KASCKtor_utilsWeekDay *friday __attribute__((swift_name("friday"))); +@property (class, readonly) KASCKtor_utilsWeekDay *saturday __attribute__((swift_name("saturday"))); +@property (class, readonly) KASCKtor_utilsWeekDay *sunday __attribute__((swift_name("sunday"))); ++ (KASCKotlinArray *)values __attribute__((swift_name("values()"))); +@property (readonly) NSString *value __attribute__((swift_name("value"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_utilsMonth"))) +@interface KASCKtor_utilsMonth : KASCKotlinEnum ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); +- (instancetype)initWithName:(NSString *)name ordinal:(int32_t)ordinal __attribute__((swift_name("init(name:ordinal:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCKtor_utilsMonthCompanion *companion __attribute__((swift_name("companion"))); +@property (class, readonly) KASCKtor_utilsMonth *january __attribute__((swift_name("january"))); +@property (class, readonly) KASCKtor_utilsMonth *february __attribute__((swift_name("february"))); +@property (class, readonly) KASCKtor_utilsMonth *march __attribute__((swift_name("march"))); +@property (class, readonly) KASCKtor_utilsMonth *april __attribute__((swift_name("april"))); +@property (class, readonly) KASCKtor_utilsMonth *may __attribute__((swift_name("may"))); +@property (class, readonly) KASCKtor_utilsMonth *june __attribute__((swift_name("june"))); +@property (class, readonly) KASCKtor_utilsMonth *july __attribute__((swift_name("july"))); +@property (class, readonly) KASCKtor_utilsMonth *august __attribute__((swift_name("august"))); +@property (class, readonly) KASCKtor_utilsMonth *september __attribute__((swift_name("september"))); +@property (class, readonly) KASCKtor_utilsMonth *october __attribute__((swift_name("october"))); +@property (class, readonly) KASCKtor_utilsMonth *november __attribute__((swift_name("november"))); +@property (class, readonly) KASCKtor_utilsMonth *december __attribute__((swift_name("december"))); ++ (KASCKotlinArray *)values __attribute__((swift_name("values()"))); +@property (readonly) NSString *value __attribute__((swift_name("value"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpHttpStatusCode.Companion"))) +@interface KASCKtor_httpHttpStatusCodeCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_httpHttpStatusCodeCompanion *shared __attribute__((swift_name("shared"))); +- (KASCKtor_httpHttpStatusCode *)fromValueValue:(int32_t)value __attribute__((swift_name("fromValue(value:)"))); +@property (readonly) KASCKtor_httpHttpStatusCode *Accepted __attribute__((swift_name("Accepted"))); +@property (readonly) KASCKtor_httpHttpStatusCode *BadGateway __attribute__((swift_name("BadGateway"))); +@property (readonly) KASCKtor_httpHttpStatusCode *BadRequest __attribute__((swift_name("BadRequest"))); +@property (readonly) KASCKtor_httpHttpStatusCode *Conflict __attribute__((swift_name("Conflict"))); +@property (readonly) KASCKtor_httpHttpStatusCode *Continue __attribute__((swift_name("Continue"))); +@property (readonly) KASCKtor_httpHttpStatusCode *Created __attribute__((swift_name("Created"))); +@property (readonly) KASCKtor_httpHttpStatusCode *ExpectationFailed __attribute__((swift_name("ExpectationFailed"))); +@property (readonly) KASCKtor_httpHttpStatusCode *FailedDependency __attribute__((swift_name("FailedDependency"))); +@property (readonly) KASCKtor_httpHttpStatusCode *Forbidden __attribute__((swift_name("Forbidden"))); +@property (readonly) KASCKtor_httpHttpStatusCode *Found __attribute__((swift_name("Found"))); +@property (readonly) KASCKtor_httpHttpStatusCode *GatewayTimeout __attribute__((swift_name("GatewayTimeout"))); +@property (readonly) KASCKtor_httpHttpStatusCode *Gone __attribute__((swift_name("Gone"))); +@property (readonly) KASCKtor_httpHttpStatusCode *InsufficientStorage __attribute__((swift_name("InsufficientStorage"))); +@property (readonly) KASCKtor_httpHttpStatusCode *InternalServerError __attribute__((swift_name("InternalServerError"))); +@property (readonly) KASCKtor_httpHttpStatusCode *LengthRequired __attribute__((swift_name("LengthRequired"))); +@property (readonly) KASCKtor_httpHttpStatusCode *Locked __attribute__((swift_name("Locked"))); +@property (readonly) KASCKtor_httpHttpStatusCode *MethodNotAllowed __attribute__((swift_name("MethodNotAllowed"))); +@property (readonly) KASCKtor_httpHttpStatusCode *MovedPermanently __attribute__((swift_name("MovedPermanently"))); +@property (readonly) KASCKtor_httpHttpStatusCode *MultiStatus __attribute__((swift_name("MultiStatus"))); +@property (readonly) KASCKtor_httpHttpStatusCode *MultipleChoices __attribute__((swift_name("MultipleChoices"))); +@property (readonly) KASCKtor_httpHttpStatusCode *NoContent __attribute__((swift_name("NoContent"))); +@property (readonly) KASCKtor_httpHttpStatusCode *NonAuthoritativeInformation __attribute__((swift_name("NonAuthoritativeInformation"))); +@property (readonly) KASCKtor_httpHttpStatusCode *NotAcceptable __attribute__((swift_name("NotAcceptable"))); +@property (readonly) KASCKtor_httpHttpStatusCode *NotFound __attribute__((swift_name("NotFound"))); +@property (readonly) KASCKtor_httpHttpStatusCode *NotImplemented __attribute__((swift_name("NotImplemented"))); +@property (readonly) KASCKtor_httpHttpStatusCode *NotModified __attribute__((swift_name("NotModified"))); +@property (readonly) KASCKtor_httpHttpStatusCode *OK __attribute__((swift_name("OK"))); +@property (readonly) KASCKtor_httpHttpStatusCode *PartialContent __attribute__((swift_name("PartialContent"))); +@property (readonly) KASCKtor_httpHttpStatusCode *PayloadTooLarge __attribute__((swift_name("PayloadTooLarge"))); +@property (readonly) KASCKtor_httpHttpStatusCode *PaymentRequired __attribute__((swift_name("PaymentRequired"))); +@property (readonly) KASCKtor_httpHttpStatusCode *PermanentRedirect __attribute__((swift_name("PermanentRedirect"))); +@property (readonly) KASCKtor_httpHttpStatusCode *PreconditionFailed __attribute__((swift_name("PreconditionFailed"))); +@property (readonly) KASCKtor_httpHttpStatusCode *Processing __attribute__((swift_name("Processing"))); +@property (readonly) KASCKtor_httpHttpStatusCode *ProxyAuthenticationRequired __attribute__((swift_name("ProxyAuthenticationRequired"))); +@property (readonly) KASCKtor_httpHttpStatusCode *RequestHeaderFieldTooLarge __attribute__((swift_name("RequestHeaderFieldTooLarge"))); +@property (readonly) KASCKtor_httpHttpStatusCode *RequestTimeout __attribute__((swift_name("RequestTimeout"))); +@property (readonly) KASCKtor_httpHttpStatusCode *RequestURITooLong __attribute__((swift_name("RequestURITooLong"))); +@property (readonly) KASCKtor_httpHttpStatusCode *RequestedRangeNotSatisfiable __attribute__((swift_name("RequestedRangeNotSatisfiable"))); +@property (readonly) KASCKtor_httpHttpStatusCode *ResetContent __attribute__((swift_name("ResetContent"))); +@property (readonly) KASCKtor_httpHttpStatusCode *SeeOther __attribute__((swift_name("SeeOther"))); +@property (readonly) KASCKtor_httpHttpStatusCode *ServiceUnavailable __attribute__((swift_name("ServiceUnavailable"))); +@property (readonly) KASCKtor_httpHttpStatusCode *SwitchProxy __attribute__((swift_name("SwitchProxy"))); +@property (readonly) KASCKtor_httpHttpStatusCode *SwitchingProtocols __attribute__((swift_name("SwitchingProtocols"))); +@property (readonly) KASCKtor_httpHttpStatusCode *TemporaryRedirect __attribute__((swift_name("TemporaryRedirect"))); +@property (readonly) KASCKtor_httpHttpStatusCode *TooManyRequests __attribute__((swift_name("TooManyRequests"))); +@property (readonly) KASCKtor_httpHttpStatusCode *Unauthorized __attribute__((swift_name("Unauthorized"))); +@property (readonly) KASCKtor_httpHttpStatusCode *UnprocessableEntity __attribute__((swift_name("UnprocessableEntity"))); +@property (readonly) KASCKtor_httpHttpStatusCode *UnsupportedMediaType __attribute__((swift_name("UnsupportedMediaType"))); +@property (readonly) KASCKtor_httpHttpStatusCode *UpgradeRequired __attribute__((swift_name("UpgradeRequired"))); +@property (readonly) KASCKtor_httpHttpStatusCode *UseProxy __attribute__((swift_name("UseProxy"))); +@property (readonly) KASCKtor_httpHttpStatusCode *VariantAlsoNegotiates __attribute__((swift_name("VariantAlsoNegotiates"))); +@property (readonly) KASCKtor_httpHttpStatusCode *VersionNotSupported __attribute__((swift_name("VersionNotSupported"))); +@property (readonly) NSArray *allStatusCodes __attribute__((swift_name("allStatusCodes"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpHttpProtocolVersion.Companion"))) +@interface KASCKtor_httpHttpProtocolVersionCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_httpHttpProtocolVersionCompanion *shared __attribute__((swift_name("shared"))); +- (KASCKtor_httpHttpProtocolVersion *)fromValueName:(NSString *)name major:(int32_t)major minor:(int32_t)minor __attribute__((swift_name("fromValue(name:major:minor:)"))); +- (KASCKtor_httpHttpProtocolVersion *)parseValue:(id)value __attribute__((swift_name("parse(value:)"))); +@property (readonly) KASCKtor_httpHttpProtocolVersion *HTTP_1_0 __attribute__((swift_name("HTTP_1_0"))); +@property (readonly) KASCKtor_httpHttpProtocolVersion *HTTP_1_1 __attribute__((swift_name("HTTP_1_1"))); +@property (readonly) KASCKtor_httpHttpProtocolVersion *HTTP_2_0 __attribute__((swift_name("HTTP_2_0"))); +@property (readonly) KASCKtor_httpHttpProtocolVersion *QUIC __attribute__((swift_name("QUIC"))); +@property (readonly) KASCKtor_httpHttpProtocolVersion *SPDY_3 __attribute__((swift_name("SPDY_3"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +__attribute__((swift_name("Kotlinx_serialization_coreSerializersModuleCollector"))) +@protocol KASCKotlinx_serialization_coreSerializersModuleCollector +@required +- (void)contextualKClass:(id)kClass provider:(id (^)(NSArray> *))provider __attribute__((swift_name("contextual(kClass:provider:)"))); +- (void)contextualKClass:(id)kClass serializer:(id)serializer __attribute__((swift_name("contextual(kClass:serializer:)"))); +- (void)polymorphicBaseClass:(id)baseClass actualClass:(id)actualClass actualSerializer:(id)actualSerializer __attribute__((swift_name("polymorphic(baseClass:actualClass:actualSerializer:)"))); +- (void)polymorphicDefaultBaseClass:(id)baseClass defaultDeserializerProvider:(id _Nullable (^)(NSString * _Nullable))defaultDeserializerProvider __attribute__((swift_name("polymorphicDefault(baseClass:defaultDeserializerProvider:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (void)polymorphicDefaultDeserializerBaseClass:(id)baseClass defaultDeserializerProvider:(id _Nullable (^)(NSString * _Nullable))defaultDeserializerProvider __attribute__((swift_name("polymorphicDefaultDeserializer(baseClass:defaultDeserializerProvider:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (void)polymorphicDefaultSerializerBaseClass:(id)baseClass defaultSerializerProvider:(id _Nullable (^)(id))defaultSerializerProvider __attribute__((swift_name("polymorphicDefaultSerializer(baseClass:defaultSerializerProvider:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpUrl.Companion"))) +@interface KASCKtor_httpUrlCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_httpUrlCompanion *shared __attribute__((swift_name("shared"))); +@end + +__attribute__((swift_name("Ktor_httpHeaderValueWithParameters"))) +@interface KASCKtor_httpHeaderValueWithParameters : KASCBase +- (instancetype)initWithContent:(NSString *)content parameters:(NSArray *)parameters __attribute__((swift_name("init(content:parameters:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKtor_httpHeaderValueWithParametersCompanion *companion __attribute__((swift_name("companion"))); +- (NSString * _Nullable)parameterName:(NSString *)name __attribute__((swift_name("parameter(name:)"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** + * @note This property has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +@property (readonly) NSString *content __attribute__((swift_name("content"))); +@property (readonly) NSArray *parameters __attribute__((swift_name("parameters"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpContentType"))) +@interface KASCKtor_httpContentType : KASCKtor_httpHeaderValueWithParameters +- (instancetype)initWithContentType:(NSString *)contentType contentSubtype:(NSString *)contentSubtype parameters:(NSArray *)parameters __attribute__((swift_name("init(contentType:contentSubtype:parameters:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithContent:(NSString *)content parameters:(NSArray *)parameters __attribute__((swift_name("init(content:parameters:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCKtor_httpContentTypeCompanion *companion __attribute__((swift_name("companion"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (BOOL)matchPattern:(KASCKtor_httpContentType *)pattern __attribute__((swift_name("match(pattern:)"))); +- (BOOL)matchPattern_:(NSString *)pattern __attribute__((swift_name("match(pattern_:)"))); +- (KASCKtor_httpContentType *)withParameterName:(NSString *)name value:(NSString *)value __attribute__((swift_name("withParameter(name:value:)"))); +- (KASCKtor_httpContentType *)withoutParameters __attribute__((swift_name("withoutParameters()"))); +@property (readonly) NSString *contentSubtype __attribute__((swift_name("contentSubtype"))); +@property (readonly) NSString *contentType __attribute__((swift_name("contentType"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpURLProtocol.Companion"))) +@interface KASCKtor_httpURLProtocolCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_httpURLProtocolCompanion *shared __attribute__((swift_name("shared"))); +- (KASCKtor_httpURLProtocol *)createOrDefaultName:(NSString *)name __attribute__((swift_name("createOrDefault(name:)"))); +@property (readonly) KASCKtor_httpURLProtocol *HTTP __attribute__((swift_name("HTTP"))); +@property (readonly) KASCKtor_httpURLProtocol *HTTPS __attribute__((swift_name("HTTPS"))); +@property (readonly) KASCKtor_httpURLProtocol *SOCKS __attribute__((swift_name("SOCKS"))); +@property (readonly) KASCKtor_httpURLProtocol *WS __attribute__((swift_name("WS"))); +@property (readonly) KASCKtor_httpURLProtocol *WSS __attribute__((swift_name("WSS"))); +@property (readonly) NSDictionary *byName __attribute__((swift_name("byName"))); +@end + + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.1") +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("KotlinKTypeProjection"))) +@interface KASCKotlinKTypeProjection : KASCBase +- (instancetype)initWithVariance:(KASCKotlinKVariance * _Nullable)variance type:(id _Nullable)type __attribute__((swift_name("init(variance:type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKotlinKTypeProjectionCompanion *companion __attribute__((swift_name("companion"))); +- (KASCKotlinKTypeProjection *)doCopyVariance:(KASCKotlinKVariance * _Nullable)variance type:(id _Nullable)type __attribute__((swift_name("doCopy(variance:type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) id _Nullable type __attribute__((swift_name("type"))); +@property (readonly) KASCKotlinKVariance * _Nullable variance __attribute__((swift_name("variance"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreParentJob"))) +@protocol KASCKotlinx_coroutines_coreParentJob +@required +- (KASCKotlinCancellationException *)getChildJobCancellationCause __attribute__((swift_name("getChildJobCancellationCause()"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreSelectInstance"))) +@protocol KASCKotlinx_coroutines_coreSelectInstance +@required +- (void)disposeOnSelectHandle:(id)handle __attribute__((swift_name("disposeOnSelect(handle:)"))); +- (id _Nullable)performAtomicTrySelectDesc:(KASCKotlinx_coroutines_coreAtomicDesc *)desc __attribute__((swift_name("performAtomicTrySelect(desc:)"))); +- (void)resumeSelectWithExceptionException:(KASCKotlinThrowable *)exception __attribute__((swift_name("resumeSelectWithException(exception:)"))); +- (BOOL)trySelect __attribute__((swift_name("trySelect()"))); +- (id _Nullable)trySelectOtherOtherOp:(KASCKotlinx_coroutines_coreLockFreeLinkedListNodePrepareOp * _Nullable)otherOp __attribute__((swift_name("trySelectOther(otherOp:)"))); +@property (readonly) id completion __attribute__((swift_name("completion"))); +@property (readonly) BOOL isSelected __attribute__((swift_name("isSelected"))); +@end + + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.3") +*/ +__attribute__((swift_name("KotlinContinuation"))) +@protocol KASCKotlinContinuation +@required +- (void)resumeWithResult:(id _Nullable)result __attribute__((swift_name("resumeWith(result:)"))); +@property (readonly) id context __attribute__((swift_name("context"))); +@end + + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.3") + * kotlin.ExperimentalStdlibApi +*/ +__attribute__((swift_name("KotlinAbstractCoroutineContextKey"))) +@interface KASCKotlinAbstractCoroutineContextKey : KASCBase +- (instancetype)initWithBaseKey:(id)baseKey safeCast:(E _Nullable (^)(id))safeCast __attribute__((swift_name("init(baseKey:safeCast:)"))) __attribute__((objc_designated_initializer)); +@end + + +/** + * @note annotations + * kotlin.ExperimentalStdlibApi +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Kotlinx_coroutines_coreCoroutineDispatcher.Key"))) +@interface KASCKotlinx_coroutines_coreCoroutineDispatcherKey : KASCKotlinAbstractCoroutineContextKey, KASCKotlinx_coroutines_coreCoroutineDispatcher *> ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); +- (instancetype)initWithBaseKey:(id)baseKey safeCast:(id _Nullable (^)(id))safeCast __attribute__((swift_name("init(baseKey:safeCast:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)key __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKotlinx_coroutines_coreCoroutineDispatcherKey *shared __attribute__((swift_name("shared"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreRunnable"))) +@protocol KASCKotlinx_coroutines_coreRunnable +@required +- (void)run __attribute__((swift_name("run()"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_ioMemory.Companion"))) +@interface KASCKtor_ioMemoryCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_ioMemoryCompanion *shared __attribute__((swift_name("shared"))); +@property (readonly) KASCKtor_ioMemory *Empty __attribute__((swift_name("Empty"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_ioBuffer.Companion"))) +@interface KASCKtor_ioBufferCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_ioBufferCompanion *shared __attribute__((swift_name("shared"))); +@property (readonly) KASCKtor_ioBuffer *Empty __attribute__((swift_name("Empty"))); +@property (readonly) int32_t ReservedSize __attribute__((swift_name("ReservedSize"))); +@end + +__attribute__((swift_name("Ktor_ioObjectPool"))) +@protocol KASCKtor_ioObjectPool +@required +- (id)borrow __attribute__((swift_name("borrow()"))); +- (void)dispose __attribute__((swift_name("dispose()"))); +- (void)recycleInstance:(id)instance __attribute__((swift_name("recycle(instance:)"))); +@property (readonly) int32_t capacity __attribute__((swift_name("capacity"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_ioChunkBuffer.Companion"))) +@interface KASCKtor_ioChunkBufferCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_ioChunkBufferCompanion *shared __attribute__((swift_name("shared"))); +@property (readonly) KASCKtor_ioChunkBuffer *Empty __attribute__((swift_name("Empty"))); +@property (readonly) id EmptyPool __attribute__((swift_name("EmptyPool"))); +@property (readonly) id Pool __attribute__((swift_name("Pool"))); +@end + +__attribute__((swift_name("KotlinByteIterator"))) +@interface KASCKotlinByteIterator : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (KASCByte *)next __attribute__((swift_name("next()"))); +- (int8_t)nextByte __attribute__((swift_name("nextByte()"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_ioInput.Companion"))) +@interface KASCKtor_ioInputCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_ioInputCompanion *shared __attribute__((swift_name("shared"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_ioByteReadPacket.Companion"))) +@interface KASCKtor_ioByteReadPacketCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_ioByteReadPacketCompanion *shared __attribute__((swift_name("shared"))); +@property (readonly) KASCKtor_ioByteReadPacket *Empty __attribute__((swift_name("Empty"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_utilsWeekDay.Companion"))) +@interface KASCKtor_utilsWeekDayCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_utilsWeekDayCompanion *shared __attribute__((swift_name("shared"))); +- (KASCKtor_utilsWeekDay *)fromOrdinal:(int32_t)ordinal __attribute__((swift_name("from(ordinal:)"))); +- (KASCKtor_utilsWeekDay *)fromValue:(NSString *)value __attribute__((swift_name("from(value:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_utilsMonth.Companion"))) +@interface KASCKtor_utilsMonthCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_utilsMonthCompanion *shared __attribute__((swift_name("shared"))); +- (KASCKtor_utilsMonth *)fromOrdinal:(int32_t)ordinal __attribute__((swift_name("from(ordinal:)"))); +- (KASCKtor_utilsMonth *)fromValue:(NSString *)value __attribute__((swift_name("from(value:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpHeaderValueParam"))) +@interface KASCKtor_httpHeaderValueParam : KASCBase +- (instancetype)initWithName:(NSString *)name value:(NSString *)value __attribute__((swift_name("init(name:value:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithName:(NSString *)name value:(NSString *)value escapeValue:(BOOL)escapeValue __attribute__((swift_name("init(name:value:escapeValue:)"))) __attribute__((objc_designated_initializer)); +- (KASCKtor_httpHeaderValueParam *)doCopyName:(NSString *)name value:(NSString *)value escapeValue:(BOOL)escapeValue __attribute__((swift_name("doCopy(name:value:escapeValue:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) BOOL escapeValue __attribute__((swift_name("escapeValue"))); +@property (readonly) NSString *name __attribute__((swift_name("name"))); +@property (readonly) NSString *value __attribute__((swift_name("value"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpHeaderValueWithParameters.Companion"))) +@interface KASCKtor_httpHeaderValueWithParametersCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_httpHeaderValueWithParametersCompanion *shared __attribute__((swift_name("shared"))); +- (id _Nullable)parseValue:(NSString *)value init:(id _Nullable (^)(NSString *, NSArray *))init __attribute__((swift_name("parse(value:init:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpContentType.Companion"))) +@interface KASCKtor_httpContentTypeCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_httpContentTypeCompanion *shared __attribute__((swift_name("shared"))); +- (KASCKtor_httpContentType *)parseValue:(NSString *)value __attribute__((swift_name("parse(value:)"))); +@property (readonly) KASCKtor_httpContentType *Any __attribute__((swift_name("Any"))); +@end + + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.1") +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("KotlinKVariance"))) +@interface KASCKotlinKVariance : KASCKotlinEnum ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); +- (instancetype)initWithName:(NSString *)name ordinal:(int32_t)ordinal __attribute__((swift_name("init(name:ordinal:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly) KASCKotlinKVariance *invariant __attribute__((swift_name("invariant"))); +@property (class, readonly) KASCKotlinKVariance *in __attribute__((swift_name("in"))); +@property (class, readonly) KASCKotlinKVariance *out __attribute__((swift_name("out"))); ++ (KASCKotlinArray *)values __attribute__((swift_name("values()"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("KotlinKTypeProjection.Companion"))) +@interface KASCKotlinKTypeProjectionCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKotlinKTypeProjectionCompanion *shared __attribute__((swift_name("shared"))); + +/** + * @note annotations + * kotlin.jvm.JvmStatic +*/ +- (KASCKotlinKTypeProjection *)contravariantType:(id)type __attribute__((swift_name("contravariant(type:)"))); + +/** + * @note annotations + * kotlin.jvm.JvmStatic +*/ +- (KASCKotlinKTypeProjection *)covariantType:(id)type __attribute__((swift_name("covariant(type:)"))); + +/** + * @note annotations + * kotlin.jvm.JvmStatic +*/ +- (KASCKotlinKTypeProjection *)invariantType:(id)type __attribute__((swift_name("invariant(type:)"))); +@property (readonly) KASCKotlinKTypeProjection *STAR __attribute__((swift_name("STAR"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreAtomicDesc"))) +@interface KASCKotlinx_coroutines_coreAtomicDesc : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (void)completeOp:(KASCKotlinx_coroutines_coreAtomicOp *)op failure:(id _Nullable)failure __attribute__((swift_name("complete(op:failure:)"))); +- (id _Nullable)prepareOp:(KASCKotlinx_coroutines_coreAtomicOp *)op __attribute__((swift_name("prepare(op:)"))); +@property KASCKotlinx_coroutines_coreAtomicOp *atomicOp __attribute__((swift_name("atomicOp"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreOpDescriptor"))) +@interface KASCKotlinx_coroutines_coreOpDescriptor : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (BOOL)isEarlierThanThat:(KASCKotlinx_coroutines_coreOpDescriptor *)that __attribute__((swift_name("isEarlierThan(that:)"))); +- (id _Nullable)performAffected:(id _Nullable)affected __attribute__((swift_name("perform(affected:)"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCKotlinx_coroutines_coreAtomicOp * _Nullable atomicOp __attribute__((swift_name("atomicOp"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Kotlinx_coroutines_coreLockFreeLinkedListNode.PrepareOp"))) +@interface KASCKotlinx_coroutines_coreLockFreeLinkedListNodePrepareOp : KASCKotlinx_coroutines_coreOpDescriptor +- (instancetype)initWithAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected next:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)next desc:(KASCKotlinx_coroutines_coreLockFreeLinkedListNodeAbstractAtomicDesc *)desc __attribute__((swift_name("init(affected:next:desc:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +- (void)finishPrepare __attribute__((swift_name("finishPrepare()"))); +- (id _Nullable)performAffected:(id _Nullable)affected __attribute__((swift_name("perform(affected:)"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode *affected __attribute__((swift_name("affected"))); +@property (readonly) KASCKotlinx_coroutines_coreAtomicOp *atomicOp __attribute__((swift_name("atomicOp"))); +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNodeAbstractAtomicDesc *desc __attribute__((swift_name("desc"))); +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode *next __attribute__((swift_name("next"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreAtomicOp"))) +@interface KASCKotlinx_coroutines_coreAtomicOp<__contravariant T> : KASCKotlinx_coroutines_coreOpDescriptor +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (void)completeAffected:(T _Nullable)affected failure:(id _Nullable)failure __attribute__((swift_name("complete(affected:failure:)"))); +- (id _Nullable)decideDecision:(id _Nullable)decision __attribute__((swift_name("decide(decision:)"))); +- (id _Nullable)performAffected:(id _Nullable)affected __attribute__((swift_name("perform(affected:)"))); +- (id _Nullable)prepareAffected:(T _Nullable)affected __attribute__((swift_name("prepare(affected:)"))); +@property (readonly) KASCKotlinx_coroutines_coreAtomicOp *atomicOp __attribute__((swift_name("atomicOp"))); +@property (readonly) id _Nullable consensus __attribute__((swift_name("consensus"))); +@property (readonly) BOOL isDecided __attribute__((swift_name("isDecided"))); +@property (readonly) int64_t opSequence __attribute__((swift_name("opSequence"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreLockFreeLinkedListNode"))) +@interface KASCKotlinx_coroutines_coreLockFreeLinkedListNode : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (void)addLastNode:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)node __attribute__((swift_name("addLast(node:)"))); +- (BOOL)addLastIfNode:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)node condition:(KASCBoolean *(^)(void))condition __attribute__((swift_name("addLastIf(node:condition:)"))); +- (BOOL)addLastIfPrevNode:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)node predicate:(KASCBoolean *(^)(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *))predicate __attribute__((swift_name("addLastIfPrev(node:predicate:)"))); +- (BOOL)addLastIfPrevAndIfNode:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)node predicate:(KASCBoolean *(^)(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *))predicate condition:(KASCBoolean *(^)(void))condition __attribute__((swift_name("addLastIfPrevAndIf(node:predicate:condition:)"))); +- (BOOL)addOneIfEmptyNode:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)node __attribute__((swift_name("addOneIfEmpty(node:)"))); +- (KASCKotlinx_coroutines_coreLockFreeLinkedListNodeAddLastDesc *)describeAddLastNode:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)node __attribute__((swift_name("describeAddLast(node:)"))); +- (KASCKotlinx_coroutines_coreLockFreeLinkedListNodeRemoveFirstDesc *)describeRemoveFirst __attribute__((swift_name("describeRemoveFirst()"))); +- (void)helpRemove __attribute__((swift_name("helpRemove()"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (KASCKotlinx_coroutines_coreLockFreeLinkedListNode * _Nullable)nextIfRemoved __attribute__((swift_name("nextIfRemoved()"))); +- (BOOL)remove __attribute__((swift_name("remove()"))); +- (id _Nullable)removeFirstIfIsInstanceOfOrPeekIfPredicate:(KASCBoolean *(^)(id _Nullable))predicate __attribute__((swift_name("removeFirstIfIsInstanceOfOrPeekIf(predicate:)"))); +- (KASCKotlinx_coroutines_coreLockFreeLinkedListNode * _Nullable)removeFirstOrNull __attribute__((swift_name("removeFirstOrNull()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) BOOL isRemoved __attribute__((swift_name("isRemoved"))); +@property (readonly, getter=next_) id next __attribute__((swift_name("next"))); +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode *nextNode __attribute__((swift_name("nextNode"))); +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode *prevNode __attribute__((swift_name("prevNode"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreLockFreeLinkedListNode.AbstractAtomicDesc"))) +@interface KASCKotlinx_coroutines_coreLockFreeLinkedListNodeAbstractAtomicDesc : KASCKotlinx_coroutines_coreAtomicDesc +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (void)completeOp:(KASCKotlinx_coroutines_coreAtomicOp *)op failure:(id _Nullable)failure __attribute__((swift_name("complete(op:failure:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (id _Nullable)failureAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected __attribute__((swift_name("failure(affected:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)finishOnSuccessAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected next:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)next __attribute__((swift_name("finishOnSuccess(affected:next:)"))); +- (void)finishPreparePrepareOp:(KASCKotlinx_coroutines_coreLockFreeLinkedListNodePrepareOp *)prepareOp __attribute__((swift_name("finishPrepare(prepareOp:)"))); +- (id _Nullable)onPreparePrepareOp:(KASCKotlinx_coroutines_coreLockFreeLinkedListNodePrepareOp *)prepareOp __attribute__((swift_name("onPrepare(prepareOp:)"))); +- (void)onRemovedAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected __attribute__((swift_name("onRemoved(affected:)"))); +- (id _Nullable)prepareOp:(KASCKotlinx_coroutines_coreAtomicOp *)op __attribute__((swift_name("prepare(op:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (BOOL)retryAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected next:(id)next __attribute__((swift_name("retry(affected:next:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (KASCKotlinx_coroutines_coreLockFreeLinkedListNode * _Nullable)takeAffectedNodeOp:(KASCKotlinx_coroutines_coreOpDescriptor *)op __attribute__((swift_name("takeAffectedNode(op:)"))); +- (id)updatedNextAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected next:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)next __attribute__((swift_name("updatedNext(affected:next:)"))); + +/** + * @note This property has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode * _Nullable affectedNode __attribute__((swift_name("affectedNode"))); + +/** + * @note This property has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode * _Nullable originalNext __attribute__((swift_name("originalNext"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreLockFreeLinkedListNodeAddLastDesc"))) +@interface KASCKotlinx_coroutines_coreLockFreeLinkedListNodeAddLastDesc : KASCKotlinx_coroutines_coreLockFreeLinkedListNodeAbstractAtomicDesc +- (instancetype)initWithQueue:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)queue node:(T)node __attribute__((swift_name("init(queue:node:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)finishOnSuccessAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected next:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)next __attribute__((swift_name("finishOnSuccess(affected:next:)"))); +- (void)finishPreparePrepareOp:(KASCKotlinx_coroutines_coreLockFreeLinkedListNodePrepareOp *)prepareOp __attribute__((swift_name("finishPrepare(prepareOp:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (BOOL)retryAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected next:(id)next __attribute__((swift_name("retry(affected:next:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (KASCKotlinx_coroutines_coreLockFreeLinkedListNode * _Nullable)takeAffectedNodeOp:(KASCKotlinx_coroutines_coreOpDescriptor *)op __attribute__((swift_name("takeAffectedNode(op:)"))); +- (id)updatedNextAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected next:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)next __attribute__((swift_name("updatedNext(affected:next:)"))); + +/** + * @note This property has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode * _Nullable affectedNode __attribute__((swift_name("affectedNode"))); +@property (readonly) T node __attribute__((swift_name("node"))); + +/** + * @note This property has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode *originalNext __attribute__((swift_name("originalNext"))); +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode *queue __attribute__((swift_name("queue"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreLockFreeLinkedListNodeRemoveFirstDesc"))) +@interface KASCKotlinx_coroutines_coreLockFreeLinkedListNodeRemoveFirstDesc : KASCKotlinx_coroutines_coreLockFreeLinkedListNodeAbstractAtomicDesc +- (instancetype)initWithQueue:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)queue __attribute__((swift_name("init(queue:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (id _Nullable)failureAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected __attribute__((swift_name("failure(affected:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)finishOnSuccessAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected next:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)next __attribute__((swift_name("finishOnSuccess(affected:next:)"))); +- (void)finishPreparePrepareOp:(KASCKotlinx_coroutines_coreLockFreeLinkedListNodePrepareOp *)prepareOp __attribute__((swift_name("finishPrepare(prepareOp:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (BOOL)retryAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected next:(id)next __attribute__((swift_name("retry(affected:next:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (KASCKotlinx_coroutines_coreLockFreeLinkedListNode * _Nullable)takeAffectedNodeOp:(KASCKotlinx_coroutines_coreOpDescriptor *)op __attribute__((swift_name("takeAffectedNode(op:)"))); +- (id)updatedNextAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected next:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)next __attribute__((swift_name("updatedNext(affected:next:)"))); + +/** + * @note This property has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode * _Nullable affectedNode __attribute__((swift_name("affectedNode"))); + +/** + * @note This property has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode * _Nullable originalNext __attribute__((swift_name("originalNext"))); +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode *queue __attribute__((swift_name("queue"))); +@property (readonly) T _Nullable result __attribute__((swift_name("result"))); +@end + +#pragma pop_macro("_Nullable_result") +#pragma clang diagnostic pop +NS_ASSUME_NONNULL_END diff --git a/KangarooAppSdkCustomer.xcframework/ios-arm64/KangarooAppSdkCustomer.framework/Info.plist b/KangarooAppSdkCustomer.xcframework/ios-arm64/KangarooAppSdkCustomer.framework/Info.plist new file mode 100644 index 0000000..632c10e --- /dev/null +++ b/KangarooAppSdkCustomer.xcframework/ios-arm64/KangarooAppSdkCustomer.framework/Info.plist @@ -0,0 +1,35 @@ + + + + + CFBundleExecutable + KangarooAppSdkCustomer + CFBundleIdentifier + features.KangarooAppSdkCustomer + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + KangarooAppSdkCustomer + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSupportedPlatforms + + iPhoneOS + + CFBundleVersion + 1 + MinimumOSVersion + 9.0 + UIDeviceFamily + + 1 + 2 + + UIRequiredDeviceCapabilities + + arm64 + + + \ No newline at end of file diff --git a/KangarooAppSdkCustomer.xcframework/ios-arm64/KangarooAppSdkCustomer.framework/KangarooAppSdkCustomer b/KangarooAppSdkCustomer.xcframework/ios-arm64/KangarooAppSdkCustomer.framework/KangarooAppSdkCustomer new file mode 100755 index 0000000..f5b9f50 Binary files /dev/null and b/KangarooAppSdkCustomer.xcframework/ios-arm64/KangarooAppSdkCustomer.framework/KangarooAppSdkCustomer differ diff --git a/KangarooAppSdkCustomer.xcframework/ios-arm64/KangarooAppSdkCustomer.framework/Modules/module.modulemap b/KangarooAppSdkCustomer.xcframework/ios-arm64/KangarooAppSdkCustomer.framework/Modules/module.modulemap new file mode 100644 index 0000000..471a123 --- /dev/null +++ b/KangarooAppSdkCustomer.xcframework/ios-arm64/KangarooAppSdkCustomer.framework/Modules/module.modulemap @@ -0,0 +1,8 @@ +framework module KangarooAppSdkCustomer { + umbrella header "KangarooAppSdkCustomer.h" + + export * + module * { export * } + + use Foundation +} \ No newline at end of file diff --git a/KangarooAppSdkCustomer.xcframework/ios-arm64/dSYMs/KangarooAppSdkCustomer.framework.dSYM/Contents/Info.plist b/KangarooAppSdkCustomer.xcframework/ios-arm64/dSYMs/KangarooAppSdkCustomer.framework.dSYM/Contents/Info.plist new file mode 100644 index 0000000..7176277 --- /dev/null +++ b/KangarooAppSdkCustomer.xcframework/ios-arm64/dSYMs/KangarooAppSdkCustomer.framework.dSYM/Contents/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.features.KangarooAppSdkCustomer + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/KangarooAppSdkCustomer.xcframework/ios-arm64/dSYMs/KangarooAppSdkCustomer.framework.dSYM/Contents/Resources/DWARF/KangarooAppSdkCustomer b/KangarooAppSdkCustomer.xcframework/ios-arm64/dSYMs/KangarooAppSdkCustomer.framework.dSYM/Contents/Resources/DWARF/KangarooAppSdkCustomer new file mode 100644 index 0000000..37abeaf Binary files /dev/null and b/KangarooAppSdkCustomer.xcframework/ios-arm64/dSYMs/KangarooAppSdkCustomer.framework.dSYM/Contents/Resources/DWARF/KangarooAppSdkCustomer differ diff --git a/KangarooAppSdkCustomer.xcframework/ios-x86_64-simulator/KangarooAppSdkCustomer.framework/Headers/KangarooAppSdkCustomer.h b/KangarooAppSdkCustomer.xcframework/ios-x86_64-simulator/KangarooAppSdkCustomer.framework/Headers/KangarooAppSdkCustomer.h new file mode 100644 index 0000000..baf6af2 --- /dev/null +++ b/KangarooAppSdkCustomer.xcframework/ios-x86_64-simulator/KangarooAppSdkCustomer.framework/Headers/KangarooAppSdkCustomer.h @@ -0,0 +1,28329 @@ +#import +#import +#import +#import +#import +#import +#import + +@class KASCModelCompanion, KASCModel, KASCAuthenticationModelCompanion, KASCAuthenticationModel, KASCKotlinEnumCompanion, KASCKotlinEnum, KASCAuthenticationScope, KASCKotlinArray, KASCKotlinThrowable, KASCKotlinException, KASCSdkContext, KASCStately_concurrencyAtomicReference, KASCStately_concurrencyAtomicBoolean, KASCTokenStore, KASCNetworkRequestCompanion, KASCField, KASCHeader, KASCQuery, KASCFormField, KASCIOResult<__covariant T>, KASCKtor_client_coreHttpRequestBuilder, KASCKHttpClient, KASCKtor_client_coreHttpClient, KASCPathParameter, KASCUserReAuthenticationModelCompanion, KASCUserReAuthenticationModel, KASCModelOld, KASCResult<__covariant T>, KASCResultEmptyResponseCompanion, KASCResultEmptyResponse<__covariant T>, KASCResultMetaData, KASCResultIdle<__covariant T>, KASCResultLoadingCompanion, KASCResultLoading<__covariant T>, KASCResultSuccessCompanion, KASCResultSuccess<__covariant T>, KASCResultUnauthorizedErrorCompanion, KASCResultUnauthorizedError<__covariant T>, KASCResultUnknownErrorCompanion, KASCResultUnknownError<__covariant T>, KASCResultMetaDataCompanion, KASCSerializedResult<__covariant T>, KASCSerializedResultEmptyResponseCompanion, KASCSerializedResultEmptyResponse, KASCSerializedResultIdleCompanion, KASCSerializedResultIdle, KASCSerializedResultLoadingCompanion, KASCSerializedResultLoading, KASCSerializedResultSuccessCompanion, KASCSerializedResultSuccess, KASCSerializedResultUnauthorizedErrorCompanion, KASCSerializedResultUnauthorizedError, KASCSerializedResultUnknownErrorCompanion, KASCSerializedResultUnknownError, KASCConfiguration, KASCLanguage_, KASCTranslation, KASCRewardTranslation, KASCEmptyResponse, KASCKotlinNothing, KASCIOResultError, KASCIOResultConnectionError, KASCIOResultEmptyResponseCompanion, KASCIOResultEmptyResponse, KASCIOResultIdleCompanion, KASCIOResultIdle, KASCIOResultLoadingCompanion, KASCIOResultSuccess<__covariant T>, KASCIOResultTimeoutError, KASCIOResultUnauthorizedError, KASCIOResultUnknownError, KASCApi, KASCGetConglomerateNotificationPreferencesApiCompanion, KASCNotificationSettingsModel, KASCCFlow, KASCNotificationBusinessPayloadCompanion, KASCNotificationBusinessPayload, KASCNotificationSettingsDataCompanion, KASCNotificationSettingsData, KASCNotificationSettingsModelCompanion, KASCTiersApiCompanion, KASCUserProfileWithTierProgram, KASCLanguage__Companion, KASCLanguage__, KASCTierLevel, KASCTierCompanion, KASCTier, KASCTierPerk, KASCTierLevelTranslation, KASCTierLevelCompanion, KASCTierLevelTranslationCompanion, KASCTierPerkTranslation, KASCTierPerkCompanion, KASCTierPerkTranslationCompanion, KASCUserTierLevel, KASCTierProgress, KASCTierProgramIncludeCompanion, KASCTierProgramInclude, KASCTierProgressCompanion, KASCUserProfileDataModelCompanion, KASCUserProfileDataModel, KASCUserProfileWithTierProgramCompanion, KASCUserTierLevelCompanion, KASCUserBusinessProfileApiCompanion, KASCUserBusinessProfileModel, KASCBusinessCategoryCompanion, KASCBusinessCategory, KASCImage, KASCBusinessDataCompanion, KASCBusinessData, KASCImageCompanion, KASCLanguage___Companion, KASCLanguage___, KASCReferralProgramCompanion, KASCReferralProgram, KASCTierPerk_, KASCTierLevelTranslation_, KASCTierLevel_Companion, KASCTierLevel_, KASCTierLevelTranslation_Companion, KASCTierPerkTranslation_, KASCTierPerk_Companion, KASCTierPerkTranslation_Companion, KASCTierProgress_Companion, KASCTierProgress_, KASCUserBalanceCompanion, KASCUserBalance, KASCUserProfileInclude, KASCUserBusinessProfileModelCompanion, KASCUserProfileIncludeCompanion, KASCOfferFacebookShareApiCompanion, KASCUserProfileModel, KASCLanguage____Companion, KASCLanguage____, KASCReferralProgram_Companion, KASCReferralProgram_, KASCTierPerk__, KASCTierLevelTranslation__, KASCTierLevel__Companion, KASCTierLevel__, KASCTierLevelTranslation__Companion, KASCTierPerkTranslation__, KASCTierPerk__Companion, KASCTierPerkTranslation__Companion, KASCTierProgress__Companion, KASCTierProgress__, KASCUserBalance_Companion, KASCUserBalance_, KASCUserProfileDataModel_Companion, KASCUserProfileDataModel_, KASCUserProfileInclude_Companion, KASCUserProfileInclude_, KASCUserProfileModelCompanion, KASCUserProfileApiCompanion, KASCUserProfileModel_, KASCLanguage_____Companion, KASCLanguage_____, KASCReferralProgram__Companion, KASCReferralProgram__, KASCTierPerk___, KASCTierLevelTranslation___, KASCTierLevel___Companion, KASCTierLevel___, KASCTierLevelTranslation___Companion, KASCTierPerkTranslation___, KASCTierPerk___Companion, KASCTierPerkTranslation___Companion, KASCTierProgress___Companion, KASCTierProgress___, KASCUserBalance__Companion, KASCUserBalance__, KASCUserProfileDataModel__Companion, KASCUserProfileDataModel__, KASCUserProfileInclude__Companion, KASCUserProfileInclude__, KASCUserProfileModel_Companion, KASCUserCheckInApiCompanion, KASCCheckInResponseModel, KASCCheckInRequest, KASCCheckInDataModelCompanion, KASCCheckInDataModel, KASCCheckInRequestCompanion, KASCCheckInResponseModelCompanion, KASCAlaCarteProductsApiCompanion, KASCAlaCarteProductsModel, KASCProduct, KASCAlaCarteItemModelCompanion, KASCAlaCarteItemModel, KASCUserProfileDataModel___, KASCUserAlaCarteIncluded, KASCAlaCarteProductsModelCompanion, KASCImagesCompanion, KASCImages, KASCLanguage______Companion, KASCLanguage______, KASCLanguagesCompanion, KASCLanguages, KASCProductCompanion, KASCUserAlaCarteIncludedCompanion, KASCUserProfileDataModel___Companion, KASCUserBusinessRewardsApiCompanion, KASCUserBusinessRewardsModel, KASCBusinessCategory_Companion, KASCBusinessCategory_, KASCImage_, KASCBusinessData_Companion, KASCBusinessData_, KASCImage_Companion, KASCLanguage_______Companion, KASCLanguage_______, KASCRewardTranslation_, KASCRewardModelCompanion, KASCRewardModel, KASCRewardTranslation_Companion, KASCUserRewardsData, KASCUserBusinessRewardsModelCompanion, KASCUserRewardsDataCompanion, KASCUserBusinessAlaCarteProductsApiCompanion, KASCAlaCarteProductsModel_, KASCProduct_, KASCAlaCarteItemModel_Companion, KASCAlaCarteItemModel_, KASCUserProfileDataModel____, KASCUserAlaCarteIncluded_, KASCAlaCarteProductsModel_Companion, KASCImages_Companion, KASCImages_, KASCLanguage________Companion, KASCLanguage________, KASCLanguages_Companion, KASCLanguages_, KASCProduct_Companion, KASCUserAlaCarteIncluded_Companion, KASCUserProfileDataModel____Companion, KASCUserProfileUpdateApiCompanion, KASCUserProfileModel__, KASCLanguage_________Companion, KASCLanguage_________, KASCReferralProgram___Companion, KASCReferralProgram___, KASCTierPerk____, KASCTierLevelTranslation____, KASCTierLevel____Companion, KASCTierLevel____, KASCTierLevelTranslation____Companion, KASCTierPerkTranslation____, KASCTierPerk____Companion, KASCTierPerkTranslation____Companion, KASCTierProgress____Companion, KASCTierProgress____, KASCUserBalance___Companion, KASCUserBalance___, KASCUserProfileDataModel_____Companion, KASCUserProfileDataModel_____, KASCUserProfileInclude___Companion, KASCUserProfileInclude___, KASCUserProfileModel__Companion, KASCGiftCardDepositApiCompanion, KASCTransferActionResultModel, KASCImage__Companion, KASCImage__, KASCLanguage__________Companion, KASCLanguage__________, KASCOfferActionCompanion, KASCOfferAction, KASCOfferTranslation, KASCOfferModelCompanion, KASCOfferModel, KASCOfferTranslationCompanion, KASCTransferMessage, KASCTransferActionResultModelCompanion, KASCTransferMessageGiftCardQueue, KASCTransferMessageActions, KASCTransferMessageCompanion, KASCTransferMessageActionsCompanion, KASCTransferMessageGiftCardQueueCompanion, KASCPublicAlaCarteProductsApiCompanion, KASCPublicALaCarteProductsModel, KASCProduct__, KASCAlaCarteItemModel__Companion, KASCAlaCarteItemModel__, KASCImages__Companion, KASCImages__, KASCLanguage___________Companion, KASCLanguage___________, KASCLanguages__Companion, KASCLanguages__, KASCProduct__Companion, KASCPublicALaCarteProductsModelCompanion, KASCPayPalPaymentApiCompanion, KASCPayPalPaymentModel, KASCPayPalPaymentGiftCard, KASCPayPalPaymentCompanion, KASCPayPalPayment, KASCPayPalPaymentGiftCardCompanion, KASCPayPalPaymentModelCompanion, KASCSocialMediaActionPerformApiCompanion, KASCPerformSocialMediaActionResponseModel, KASCPerformSocialMediaActionRequestModel, KASCPerformActionResponseModelCompanion, KASCPerformActionResponseModel, KASCPerformSocialMediaActionRequestModelCompanion, KASCPerformSocialMediaActionResponseModelCompanion, KASCRedeemRewardsApiCompanion, KASCRedeemResponseModel, KASCRedeemRequest, KASCLanguage____________Companion, KASCLanguage____________, KASCRedemptionModel, KASCRedeemRequestCompanion, KASCUserProfileModel___, KASCRedeemResponseDataCompanion, KASCRedeemResponseData, KASCRedeemResponseModelCompanion, KASCRedemptionModelCompanion, KASCReferralProgram____Companion, KASCReferralProgram____, KASCTierPerk_____, KASCTierLevelTranslation_____, KASCTierLevel_____Companion, KASCTierLevel_____, KASCTierLevelTranslation_____Companion, KASCTierPerkTranslation_____, KASCTierPerk_____Companion, KASCTierPerkTranslation_____Companion, KASCTierProgress_____Companion, KASCTierProgress_____, KASCUserBalance____Companion, KASCUserBalance____, KASCUserProfileDataModel______Companion, KASCUserProfileDataModel______, KASCUserProfileInclude____Companion, KASCUserProfileInclude____, KASCUserProfileModel___Companion, KASCPublicProductsApiCompanion, KASCPublicProductsModel, KASCImages___Companion, KASCImages___, KASCLanguage_____________Companion, KASCLanguage_____________, KASCLanguages___Companion, KASCLanguages___, KASCProduct___Companion, KASCProduct___, KASCPublicProductsModelCompanion, KASCUserRewardsApiCompanion, KASCUserRewardsModel, KASCImage___Companion, KASCImage___, KASCLanguage______________Companion, KASCLanguage______________, KASCRewardTranslation__, KASCRewardModel_Companion, KASCRewardModel_, KASCRewardTranslation__Companion, KASCUserRewardsData_Companion, KASCUserRewardsData_, KASCUserRewardsModelCompanion, KASCBannersApiCompanion, KASCBannersModel, KASCLanguage_______________, KASCBannerCompanion, KASCBanner, KASCBannersModelCompanion, KASCLanguage_______________Companion, KASCBalanceTransferApiCompanion, KASCTransferResponseModel, KASCTransferRequestModel, KASCUserProfileDataModel_______, KASCTransferDataModelCompanion, KASCTransferDataModel, KASCTransferRequestFromCompanion, KASCTransferRequestFrom, KASCTransferRequestTo, KASCTransferRequestModelCompanion, KASCTransferRequestToCompanion, KASCTransferResponseModelCompanion, KASCUserProfileDataModel_______Companion, KASCGiftCardsApiCompanion, KASCGiftCardsModel, KASCGiftCardActionCompanion, KASCGiftCardAction, KASCImage____, KASCGiftCardTranslation, KASCGiftCardModelCompanion, KASCGiftCardModel, KASCLanguage________________, KASCGiftCardTranslationCompanion, KASCGiftCardsModelCompanion, KASCImage____Companion, KASCLanguage________________Companion, KASCBusinessesApiCompanion, KASCBusinesses, KASCBusinessCategory__Companion, KASCBusinessCategory__, KASCImage_____, KASCBusinessData__Companion, KASCBusinessData__, KASCBusinessesCompanion, KASCImage_____Companion, KASCUserCouponsApiCompanion, KASCUserCouponsModel, KASCOfferModel_, KASCCouponModelCompanion, KASCCouponModel, KASCImage______Companion, KASCImage______, KASCLanguage_________________Companion, KASCLanguage_________________, KASCOfferAction_Companion, KASCOfferAction_, KASCOfferTranslation_, KASCOfferModel_Companion, KASCOfferTranslation_Companion, KASCUserCouponsModelCompanion, KASCUserBusinessSocialMediaLinksApiCompanion, KASCSocialMediaLinksModel, KASCBusinessActionModelCompanion, KASCBusinessActionModel, KASCSocialMediaModel, KASCSocialMediaLinksIncludedCompanion, KASCSocialMediaLinksIncluded, KASCUserProfileDataModel________, KASCSocialMediaLinksModelCompanion, KASCSocialMediaModelCompanion, KASCUserProfileDataModel________Companion, KASCRedeemCouponsApiCompanion, KASCCouponRedemptionResponseModel, KASCRedeemCouponRequest, KASCCouponRedemptionModelCompanion, KASCCouponRedemptionModel, KASCUserProfileModel____, KASCCouponRedemptionResponseDataCompanion, KASCCouponRedemptionResponseData, KASCCouponRedemptionResponseModelCompanion, KASCLanguage__________________Companion, KASCLanguage__________________, KASCOfferRedemptionModelCompanion, KASCOfferRedemptionModel, KASCRedeemCouponRequestCompanion, KASCReferralProgram_____Companion, KASCReferralProgram_____, KASCTierPerk______, KASCTierLevelTranslation______, KASCTierLevel______Companion, KASCTierLevel______, KASCTierLevelTranslation______Companion, KASCTierPerkTranslation______, KASCTierPerk______Companion, KASCTierPerkTranslation______Companion, KASCTierProgress______Companion, KASCTierProgress______, KASCUserBalance_____Companion, KASCUserBalance_____, KASCUserProfileDataModel_________Companion, KASCUserProfileDataModel_________, KASCUserProfileInclude_____Companion, KASCUserProfileInclude_____, KASCUserProfileModel____Companion, KASCUserDeleteApiCompanion, KASCGetNotificationPreferencesApiCompanion, KASCNotificationSettingsModel_, KASCNotificationBusinessPayload_Companion, KASCNotificationBusinessPayload_, KASCNotificationSettingsData_Companion, KASCNotificationSettingsData_, KASCNotificationSettingsModel_Companion, KASCUserUnsubscribeApiCompanion, KASCUserDetailsApiCompanion, KASCUserDetailsModel, KASCUserProfileDataModel__________, KASCUserDetailsModelCompanion, KASCUserProfileDataModel__________Companion, KASCBranchesApiCompanion, KASCBusiness, KASCBranchPhone, KASCImage_______, KASCBranchAddress, KASCBranchCompanion, KASCBranch, KASCBranchAddressCompanion, KASCBranchPhoneCompanion, KASCBusinessData___, KASCBusinessBranchesData, KASCBusinessCompanion, KASCBusinessBranchesDataCompanion, KASCBusinessCategory___Companion, KASCBusinessCategory___, KASCBusinessData___Companion, KASCImage_______Companion, KASCUserScanReceiptApiCompanion, KASCScanReceiptResponseModel, KASCScanReceiptRequest, KASCScanReceiptRequestCompanion, KASCScanReceiptResponseModelCompanion, KASCGetSpinToWinPrizesApiCompanion, KASCSpinToWinPrizesModel, KASCPrizeModelCompanion, KASCPrizeModel, KASCSpinToWinPrizesDataCompanion, KASCSpinToWinPrizesData, KASCSpinToWinPrizesModelCompanion, KASCGiftCardPurchaseApiCompanion, KASCGiftCardPayPalPaymentResponseModel, KASCGiftCardPurchaseRequest, KASCGiftCardPayPalPaymentCompanion, KASCGiftCardPayPalPayment, KASCGiftCardPurchaseResponseGiftCardData, KASCUserBalance______, KASCGiftCardPayPalPaymentResponseDataCompanion, KASCGiftCardPayPalPaymentResponseData, KASCGiftCardPayPalPaymentResponseModelCompanion, KASCGiftCardPurchaseRequestCompanion, KASCGiftCardPurchaseResponseGiftCardDataCompanion, KASCUserBalance______Companion, KASCUserBusinessBannersApiCompanion, KASCUserBusinessBannersModel, KASCLanguage___________________, KASCBanner_Companion, KASCBanner_, KASCBusinessCategory____Companion, KASCBusinessCategory____, KASCImage________, KASCBusinessData____Companion, KASCBusinessData____, KASCImage________Companion, KASCLanguage___________________Companion, KASCUserBusinessBannersIncludedCompanion, KASCUserBusinessBannersIncluded, KASCUserBusinessBannersModelCompanion, KASCUserOffersApiCompanion, KASCUserOffersModel, KASCImage_________Companion, KASCImage_________, KASCLanguage____________________Companion, KASCLanguage____________________, KASCOfferAction__Companion, KASCOfferAction__, KASCOfferTranslation__, KASCOfferModel__Companion, KASCOfferModel__, KASCOfferTranslation__Companion, KASCUserOffersModelCompanion, KASCUpdateDefaultBusinessIdApiCompanion, KASCDefaultBusiness, KASCDefaultBusinessData, KASCDefaultBusinessCompanion, KASCDefaultBusinessDataCompanion, KASCUserPinResetRequestApiCompanion, KASCUserPinResetRequest, KASCUserPinResetRequestCompanion, KASCClaimOfferApiCompanion, KASCClaimedOfferModel, KASCOfferModel___, KASCClaimedOfferModelCompanion, KASCImage__________Companion, KASCImage__________, KASCLanguage_____________________Companion, KASCLanguage_____________________, KASCOfferAction___Companion, KASCOfferAction___, KASCOfferTranslation___, KASCOfferModel___Companion, KASCOfferTranslation___Companion, KASCUserTransactionHistoryApiCompanion, KASCUserTransactionHistoryModel, KASCTransactionCompanion, KASCTransaction, KASCUserTransactionHistoryModelCompanion, KASCSocialMediaLinksApiCompanion, KASCSocialMediaLinksModel_, KASCBusinessActionModel_Companion, KASCBusinessActionModel_, KASCSocialMediaModel_, KASCSocialMediaLinksIncluded_Companion, KASCSocialMediaLinksIncluded_, KASCUserProfileDataModel___________, KASCSocialMediaLinksModel_Companion, KASCSocialMediaModel_Companion, KASCUserProfileDataModel___________Companion, KASCUserProductsApiCompanion, KASCUserProductsModel, KASCImages____Companion, KASCImages____, KASCLanguage______________________Companion, KASCLanguage______________________, KASCLanguages____Companion, KASCLanguages____, KASCProduct____Companion, KASCProduct____, KASCUserProductsIncludedCompanion, KASCUserProductsIncluded, KASCUserProfileDataModel____________, KASCUserProductsModelCompanion, KASCUserProfileDataModel____________Companion, KASCUserRegistrationApiCompanion, KASCUserProfileDataModel_____________, KASCUserProfileDataModel_____________Companion, KASCBusinessApiCompanion, KASCBusiness_, KASCBranchPhone_, KASCImage___________, KASCBranchAddress_, KASCBranch_Companion, KASCBranch_, KASCBranchAddress_Companion, KASCBranchPhone_Companion, KASCBusinessData_____, KASCBusinessBranchesData_, KASCBusiness_Companion, KASCBusinessBranchesData_Companion, KASCBusinessCategory_____Companion, KASCBusinessCategory_____, KASCBusinessData_____Companion, KASCImage___________Companion, KASCPublicBusinessSettingsApiCompanion, KASCPublicBusinessSettings, KASCBusinessCategory______Companion, KASCBusinessCategory______, KASCImage____________, KASCBusinessData______Companion, KASCBusinessData______, KASCImage____________Companion, KASCPublicBusinessSettingsData, KASCPublicBusinessSettingsCompanion, KASCPublicBusinessSettingsDataCompanion, KASCGetDefaultBusinessIdApiCompanion, KASCDefaultBusiness_, KASCDefaultBusinessData_, KASCDefaultBusiness_Companion, KASCDefaultBusinessData_Companion, KASCUserBusinessFrequentBuyerProgramsApiCompanion, KASCFrequentBuyerProgramsModel, KASCFrequentBuyerProgramModelCompanion, KASCFrequentBuyerProgramModel, KASCFrequentBuyerProgramsIncludedCompanion, KASCFrequentBuyerProgramsIncluded, KASCUserProfileDataModel______________, KASCFrequentBuyerProgramsModelCompanion, KASCUserProfileDataModel______________Companion, KASCPublicBranchesApiCompanion, KASCPublicBranchesModel, KASCBranchPhone__, KASCImage_____________, KASCBranchAddress__, KASCBranch__Companion, KASCBranch__, KASCBranchAddress__Companion, KASCBranchPhone__Companion, KASCImage_____________Companion, KASCPublicBranchesModelCompanion, KASCUserPinUpdateApiCompanion, KASCUserProfileModel_____, KASCUpdatePinRequest, KASCLanguage_______________________Companion, KASCLanguage_______________________, KASCReferralProgram______Companion, KASCReferralProgram______, KASCTierPerk_______, KASCTierLevelTranslation_______, KASCTierLevel_______Companion, KASCTierLevel_______, KASCTierLevelTranslation_______Companion, KASCTierPerkTranslation_______, KASCTierPerk_______Companion, KASCTierPerkTranslation_______Companion, KASCTierProgress_______Companion, KASCTierProgress_______, KASCUpdatePinRequestCompanion, KASCUserBalance_______Companion, KASCUserBalance_______, KASCUserProfileDataModel_______________Companion, KASCUserProfileDataModel_______________, KASCUserProfileInclude______Companion, KASCUserProfileInclude______, KASCUserProfileModel_____Companion, KASCPushTokenRegistrationApiCompanion, KASCUserProfileModel______, KASCLanguage________________________Companion, KASCLanguage________________________, KASCReferralProgram_______Companion, KASCReferralProgram_______, KASCTierPerk________, KASCTierLevelTranslation________, KASCTierLevel________Companion, KASCTierLevel________, KASCTierLevelTranslation________Companion, KASCTierPerkTranslation________, KASCTierPerk________Companion, KASCTierPerkTranslation________Companion, KASCTierProgress________Companion, KASCTierProgress________, KASCUserBalance________Companion, KASCUserBalance________, KASCUserProfileDataModel________________Companion, KASCUserProfileDataModel________________, KASCUserProfileInclude_______Companion, KASCUserProfileInclude_______, KASCUserProfileModel______Companion, KASCUserBusinessOffersApiCompanion, KASCUserBusinessOffersModel, KASCBusinessCategory_______Companion, KASCBusinessCategory_______, KASCImage______________, KASCBusinessData_______Companion, KASCBusinessData_______, KASCImage______________Companion, KASCLanguage_________________________Companion, KASCLanguage_________________________, KASCOfferAction____Companion, KASCOfferAction____, KASCOfferTranslation____, KASCOfferModel____Companion, KASCOfferModel____, KASCOfferTranslation____Companion, KASCUserBusinessOffersIncludedCompanion, KASCUserBusinessOffersIncluded, KASCUserBusinessOffersModelCompanion, KASCPublicBannersApiCompanion, KASCBannersModel_, KASCLanguage__________________________, KASCBanner__Companion, KASCBanner__, KASCBannersModel_Companion, KASCLanguage__________________________Companion, KASCUpdateNotificationPreferencesApiCompanion, KASCNotificationSettingsModel__, KASCNotificationSettingsData__, KASCNotificationBusinessPayload__Companion, KASCNotificationBusinessPayload__, KASCNotificationSettingsData__Companion, KASCNotificationSettingsModel__Companion, KASCUserBusinessProductsApiCompanion, KASCUserProductsModel_, KASCImages_____Companion, KASCImages_____, KASCLanguage___________________________Companion, KASCLanguage___________________________, KASCLanguages_____Companion, KASCLanguages_____, KASCProduct_____Companion, KASCProduct_____, KASCUserProductsIncluded_Companion, KASCUserProductsIncluded_, KASCUserProfileDataModel_________________, KASCUserProductsModel_Companion, KASCUserProfileDataModel_________________Companion, KASCUserUsedCouponsApiCompanion, KASCUserCouponsModel_, KASCOfferModel_____, KASCCouponModel_Companion, KASCCouponModel_, KASCImage_______________Companion, KASCImage_______________, KASCLanguage____________________________Companion, KASCLanguage____________________________, KASCOfferAction_____Companion, KASCOfferAction_____, KASCOfferTranslation_____, KASCOfferModel_____Companion, KASCOfferTranslation_____Companion, KASCUserCouponsModel_Companion, KASCUserAuthenticationApiCompanion, KASCUserAuthenticationModel, KASCUserAuthenticationModelCompanion, KASCFrequentBuyerProgramsApiCompanion, KASCFrequentBuyerProgramsModel_, KASCFrequentBuyerProgramModel_Companion, KASCFrequentBuyerProgramModel_, KASCFrequentBuyerProgramsIncluded_Companion, KASCFrequentBuyerProgramsIncluded_, KASCUserProfileDataModel__________________, KASCFrequentBuyerProgramsModel_Companion, KASCUserProfileDataModel__________________Companion, KASCTransferRecallApiCompanion, KASCTransferActionResultModel_, KASCImage________________Companion, KASCImage________________, KASCLanguage_____________________________Companion, KASCLanguage_____________________________, KASCOfferAction______Companion, KASCOfferAction______, KASCOfferTranslation______, KASCOfferModel______Companion, KASCOfferModel______, KASCOfferTranslation______Companion, KASCTransferMessage_, KASCTransferActionResultModel_Companion, KASCTransferMessageGiftCardQueue_, KASCTransferMessageActions_, KASCTransferMessage_Companion, KASCTransferMessageActions_Companion, KASCTransferMessageGiftCardQueue_Companion, KASCCampaignMessagesApiCompanion, KASCCampaignMessagesModel, KASCBusinessCategory________Companion, KASCBusinessCategory________, KASCImage_________________, KASCBusinessData________Companion, KASCBusinessData________, KASCOfferModel_______, KASCCampaignCompanion, KASCCampaign, KASCCampaignMessageCompanion, KASCCampaignMessage, KASCCampaignMessagesModelCompanion, KASCImage_________________Companion, KASCLanguage______________________________Companion, KASCLanguage______________________________, KASCOfferAction_______Companion, KASCOfferAction_______, KASCOfferTranslation_______, KASCOfferModel_______Companion, KASCOfferTranslation_______Companion, KASCUserPinResetApiCompanion, KASCUserAccountVerificationApiCompanion, KASCUserProfileModel_______, KASCLanguage_______________________________Companion, KASCLanguage_______________________________, KASCReferralProgram________Companion, KASCReferralProgram________, KASCTierPerk_________, KASCTierLevelTranslation_________, KASCTierLevel_________Companion, KASCTierLevel_________, KASCTierLevelTranslation_________Companion, KASCTierPerkTranslation_________, KASCTierPerk_________Companion, KASCTierPerkTranslation_________Companion, KASCTierProgress_________Companion, KASCTierProgress_________, KASCUserBalance_________Companion, KASCUserBalance_________, KASCUserProfileDataModel___________________Companion, KASCUserProfileDataModel___________________, KASCUserProfileInclude________Companion, KASCUserProfileInclude________, KASCUserProfileModel_______Companion, KASCCountriesApiCompanion, KASCCountries, KASCCountry, KASCCountriesCompanion, KASCCountryCompanion, KASCPublicOffersApiCompanion, KASCUserOffersModel_, KASCImage__________________Companion, KASCImage__________________, KASCLanguage________________________________Companion, KASCLanguage________________________________, KASCOfferAction________Companion, KASCOfferAction________, KASCOfferTranslation________, KASCOfferModel________Companion, KASCOfferModel________, KASCOfferTranslation________Companion, KASCUserOffersModel_Companion, KASCStringsApiCompanion, KASCApplicationStringsModel, KASCApplicationStringCompanion, KASCApplicationString, KASCApplicationStringsModelCompanion, KASCUserBusinessGiftCardsApiCompanion, KASCUserBusinessGiftCardsModel, KASCBusinessCategory_________Companion, KASCBusinessCategory_________, KASCImage___________________, KASCBusinessData_________Companion, KASCBusinessData_________, KASCGiftCardAction_Companion, KASCGiftCardAction_, KASCGiftCardTranslation_, KASCGiftCardModel_Companion, KASCGiftCardModel_, KASCLanguage_________________________________, KASCGiftCardTranslation_Companion, KASCImage___________________Companion, KASCLanguage_________________________________Companion, KASCUserBusinessGiftCardsIncludedCompanion, KASCUserBusinessGiftCardsIncluded, KASCUserBusinessGiftCardsModelCompanion, KASCTransferMessagesApiCompanion, KASCTransferMessagesModel, KASCImage____________________Companion, KASCImage____________________, KASCLanguage__________________________________Companion, KASCLanguage__________________________________, KASCOfferAction_________Companion, KASCOfferAction_________, KASCOfferTranslation_________, KASCOfferModel_________Companion, KASCOfferModel_________, KASCOfferTranslation_________Companion, KASCTransferMessageGiftCardQueue__, KASCTransferMessageActions__, KASCTransferMessage__Companion, KASCTransferMessage__, KASCTransferMessageActions__Companion, KASCTransferMessageGiftCardQueue__Companion, KASCTransferMessagesModelCompanion, KASCPublicRewardsApiCompanion, KASCPublicRewardsModel, KASCImage_____________________Companion, KASCImage_____________________, KASCLanguage___________________________________Companion, KASCLanguage___________________________________, KASCRewardModel__, KASCPublicRewardsModelCompanion, KASCRewardTranslation___, KASCRewardModel__Companion, KASCRewardTranslation___Companion, KASCKtor_client_coreHttpResponse, KASCKtor_client_authBearerTokens, KASCKtor_client_authRefreshTokensParams, KASCKotlinUnit, KASCKotlinRuntimeException, KASCKotlinIllegalStateException, KASCKtor_httpHeadersBuilder, KASCKtor_client_coreHttpRequestBuilderCompanion, KASCKtor_client_coreHttpRequestData, KASCKtor_httpURLBuilder, KASCKtor_utilsTypeInfo, KASCKtor_httpHttpMethod, KASCKtor_client_coreHttpClientEngineConfig, KASCKtor_client_coreHttpClientConfig, KASCKtor_eventsEvents, KASCKtor_client_coreHttpReceivePipeline, KASCKtor_client_coreHttpRequestPipeline, KASCKtor_client_coreHttpResponsePipeline, KASCKtor_client_coreHttpSendPipeline, KASCKtor_client_coreHttpClientCall, KASCKtor_utilsGMTDate, KASCKtor_httpHttpStatusCode, KASCKtor_httpHttpProtocolVersion, KASCKotlinx_serialization_coreSerializersModule, KASCKotlinx_serialization_coreSerialKind, KASCKtor_utilsStringValuesBuilderImpl, KASCKtor_httpUrl, KASCKtor_httpOutgoingContent, KASCKtor_utilsAttributeKey, KASCKtor_httpURLProtocol, KASCKtor_httpURLBuilderCompanion, KASCKotlinCancellationException, KASCKtor_httpHttpMethodCompanion, KASCKtor_client_coreHttpResponseData, KASCKotlinx_coroutines_coreCoroutineDispatcher, KASCKtor_client_coreProxyConfig, KASCKtor_eventsEventDefinition, KASCKtor_utilsPipelinePhase, KASCKtor_utilsPipeline, KASCKtor_client_coreHttpReceivePipelinePhases, KASCKtor_client_coreHttpRequestPipelinePhases, KASCKtor_client_coreHttpResponsePipelinePhases, KASCKtor_client_coreHttpResponseContainer, KASCKtor_client_coreHttpSendPipelinePhases, KASCKtor_client_coreHttpClientCallCompanion, KASCKtor_ioMemory, KASCKtor_ioChunkBuffer, KASCKotlinByteArray, KASCKtor_ioBuffer, KASCKtor_ioByteReadPacket, KASCKtor_utilsGMTDateCompanion, KASCKtor_utilsWeekDay, KASCKtor_utilsMonth, KASCKtor_httpHttpStatusCodeCompanion, KASCKtor_httpHttpProtocolVersionCompanion, KASCKtor_httpUrlCompanion, KASCKtor_httpContentType, KASCKtor_httpURLProtocolCompanion, KASCKotlinKTypeProjection, KASCKotlinAbstractCoroutineContextElement, KASCKotlinx_coroutines_coreCoroutineDispatcherKey, KASCKtor_ioMemoryCompanion, KASCKtor_ioBufferCompanion, KASCKtor_ioChunkBufferCompanion, KASCKotlinByteIterator, KASCKtor_ioInputCompanion, KASCKtor_ioInput, KASCKtor_ioByteReadPacketCompanion, KASCKtor_utilsWeekDayCompanion, KASCKtor_utilsMonthCompanion, KASCKtor_httpHeaderValueParam, KASCKtor_httpHeaderValueWithParametersCompanion, KASCKtor_httpHeaderValueWithParameters, KASCKtor_httpContentTypeCompanion, KASCKotlinKVariance, KASCKotlinKTypeProjectionCompanion, KASCKotlinx_coroutines_coreAtomicDesc, KASCKotlinx_coroutines_coreLockFreeLinkedListNodePrepareOp, KASCKotlinAbstractCoroutineContextKey, KASCKotlinx_coroutines_coreAtomicOp<__contravariant T>, KASCKotlinx_coroutines_coreOpDescriptor, KASCKotlinx_coroutines_coreLockFreeLinkedListNode, KASCKotlinx_coroutines_coreLockFreeLinkedListNodeAbstractAtomicDesc, KASCKotlinx_coroutines_coreLockFreeLinkedListNodeAddLastDesc, KASCKotlinx_coroutines_coreLockFreeLinkedListNodeRemoveFirstDesc; + +@protocol KASCKotlinx_serialization_coreKSerializer, KASCKotlinComparable, KASCKotlinSuspendFunction0, KASCKotlinx_coroutines_coreFlowCollector, KASCKotlinx_coroutines_coreFlow, KASCKtor_ioCloseable, KASCKotlinx_serialization_coreEncoder, KASCKotlinx_serialization_coreSerialDescriptor, KASCKotlinx_serialization_coreSerializationStrategy, KASCKotlinx_serialization_coreDecoder, KASCKotlinx_serialization_coreDeserializationStrategy, KASCKotlinIterator, KASCKotlinFunction, KASCKtor_httpHttpMessageBuilder, KASCKtor_client_coreHttpClientEngineCapability, KASCKtor_utilsAttributes, KASCKotlinx_coroutines_coreJob, KASCKotlinCoroutineContext, KASCKotlinx_coroutines_coreCoroutineScope, KASCKtor_client_coreHttpClientEngine, KASCKtor_httpHeaders, KASCKtor_httpHttpMessage, KASCKtor_ioByteReadChannel, KASCKotlinx_serialization_coreCompositeEncoder, KASCKotlinAnnotation, KASCKotlinx_serialization_coreCompositeDecoder, KASCKtor_utilsStringValues, KASCKotlinMapEntry, KASCKtor_utilsStringValuesBuilder, KASCKtor_httpParameters, KASCKtor_httpParametersBuilder, KASCKotlinKClass, KASCKotlinKType, KASCKotlinx_coroutines_coreChildHandle, KASCKotlinx_coroutines_coreChildJob, KASCKotlinx_coroutines_coreDisposableHandle, KASCKotlinSequence, KASCKotlinx_coroutines_coreSelectClause0, KASCKotlinCoroutineContextKey, KASCKotlinCoroutineContextElement, KASCKtor_client_coreHttpClientPlugin, KASCKotlinSuspendFunction2, KASCKtor_client_coreHttpRequest, KASCKtor_ioReadSession, KASCKotlinSuspendFunction1, KASCKotlinAppendable, KASCKotlinx_serialization_coreSerializersModuleCollector, KASCKotlinKDeclarationContainer, KASCKotlinKAnnotatedElement, KASCKotlinKClassifier, KASCKotlinx_coroutines_coreParentJob, KASCKotlinx_coroutines_coreSelectInstance, KASCKotlinContinuation, KASCKotlinContinuationInterceptor, KASCKotlinx_coroutines_coreRunnable, KASCKtor_ioObjectPool; + +NS_ASSUME_NONNULL_BEGIN +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wunknown-warning-option" +#pragma clang diagnostic ignored "-Wincompatible-property-type" +#pragma clang diagnostic ignored "-Wnullability" + +#pragma push_macro("_Nullable_result") +#if !__has_feature(nullability_nullable_result) +#undef _Nullable_result +#define _Nullable_result _Nullable +#endif + +__attribute__((swift_name("KotlinBase"))) +@interface KASCBase : NSObject +- (instancetype)init __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); ++ (void)initialize __attribute__((objc_requires_super)); +@end + +@interface KASCBase (KASCBaseCopying) +@end + +__attribute__((swift_name("KotlinMutableSet"))) +@interface KASCMutableSet : NSMutableSet +@end + +__attribute__((swift_name("KotlinMutableDictionary"))) +@interface KASCMutableDictionary : NSMutableDictionary +@end + +@interface NSError (NSErrorKASCKotlinException) +@property (readonly) id _Nullable kotlinException; +@end + +__attribute__((swift_name("KotlinNumber"))) +@interface KASCNumber : NSNumber +- (instancetype)initWithChar:(char)value __attribute__((unavailable)); +- (instancetype)initWithUnsignedChar:(unsigned char)value __attribute__((unavailable)); +- (instancetype)initWithShort:(short)value __attribute__((unavailable)); +- (instancetype)initWithUnsignedShort:(unsigned short)value __attribute__((unavailable)); +- (instancetype)initWithInt:(int)value __attribute__((unavailable)); +- (instancetype)initWithUnsignedInt:(unsigned int)value __attribute__((unavailable)); +- (instancetype)initWithLong:(long)value __attribute__((unavailable)); +- (instancetype)initWithUnsignedLong:(unsigned long)value __attribute__((unavailable)); +- (instancetype)initWithLongLong:(long long)value __attribute__((unavailable)); +- (instancetype)initWithUnsignedLongLong:(unsigned long long)value __attribute__((unavailable)); +- (instancetype)initWithFloat:(float)value __attribute__((unavailable)); +- (instancetype)initWithDouble:(double)value __attribute__((unavailable)); +- (instancetype)initWithBool:(BOOL)value __attribute__((unavailable)); +- (instancetype)initWithInteger:(NSInteger)value __attribute__((unavailable)); +- (instancetype)initWithUnsignedInteger:(NSUInteger)value __attribute__((unavailable)); ++ (instancetype)numberWithChar:(char)value __attribute__((unavailable)); ++ (instancetype)numberWithUnsignedChar:(unsigned char)value __attribute__((unavailable)); ++ (instancetype)numberWithShort:(short)value __attribute__((unavailable)); ++ (instancetype)numberWithUnsignedShort:(unsigned short)value __attribute__((unavailable)); ++ (instancetype)numberWithInt:(int)value __attribute__((unavailable)); ++ (instancetype)numberWithUnsignedInt:(unsigned int)value __attribute__((unavailable)); ++ (instancetype)numberWithLong:(long)value __attribute__((unavailable)); ++ (instancetype)numberWithUnsignedLong:(unsigned long)value __attribute__((unavailable)); ++ (instancetype)numberWithLongLong:(long long)value __attribute__((unavailable)); ++ (instancetype)numberWithUnsignedLongLong:(unsigned long long)value __attribute__((unavailable)); ++ (instancetype)numberWithFloat:(float)value __attribute__((unavailable)); ++ (instancetype)numberWithDouble:(double)value __attribute__((unavailable)); ++ (instancetype)numberWithBool:(BOOL)value __attribute__((unavailable)); ++ (instancetype)numberWithInteger:(NSInteger)value __attribute__((unavailable)); ++ (instancetype)numberWithUnsignedInteger:(NSUInteger)value __attribute__((unavailable)); +@end + +__attribute__((swift_name("KotlinByte"))) +@interface KASCByte : KASCNumber +- (instancetype)initWithChar:(char)value; ++ (instancetype)numberWithChar:(char)value; +@end + +__attribute__((swift_name("KotlinUByte"))) +@interface KASCUByte : KASCNumber +- (instancetype)initWithUnsignedChar:(unsigned char)value; ++ (instancetype)numberWithUnsignedChar:(unsigned char)value; +@end + +__attribute__((swift_name("KotlinShort"))) +@interface KASCShort : KASCNumber +- (instancetype)initWithShort:(short)value; ++ (instancetype)numberWithShort:(short)value; +@end + +__attribute__((swift_name("KotlinUShort"))) +@interface KASCUShort : KASCNumber +- (instancetype)initWithUnsignedShort:(unsigned short)value; ++ (instancetype)numberWithUnsignedShort:(unsigned short)value; +@end + +__attribute__((swift_name("KotlinInt"))) +@interface KASCInt : KASCNumber +- (instancetype)initWithInt:(int)value; ++ (instancetype)numberWithInt:(int)value; +@end + +__attribute__((swift_name("KotlinUInt"))) +@interface KASCUInt : KASCNumber +- (instancetype)initWithUnsignedInt:(unsigned int)value; ++ (instancetype)numberWithUnsignedInt:(unsigned int)value; +@end + +__attribute__((swift_name("KotlinLong"))) +@interface KASCLong : KASCNumber +- (instancetype)initWithLongLong:(long long)value; ++ (instancetype)numberWithLongLong:(long long)value; +@end + +__attribute__((swift_name("KotlinULong"))) +@interface KASCULong : KASCNumber +- (instancetype)initWithUnsignedLongLong:(unsigned long long)value; ++ (instancetype)numberWithUnsignedLongLong:(unsigned long long)value; +@end + +__attribute__((swift_name("KotlinFloat"))) +@interface KASCFloat : KASCNumber +- (instancetype)initWithFloat:(float)value; ++ (instancetype)numberWithFloat:(float)value; +@end + +__attribute__((swift_name("KotlinDouble"))) +@interface KASCDouble : KASCNumber +- (instancetype)initWithDouble:(double)value; ++ (instancetype)numberWithDouble:(double)value; +@end + +__attribute__((swift_name("KotlinBoolean"))) +@interface KASCBoolean : KASCNumber +- (instancetype)initWithBool:(BOOL)value; ++ (instancetype)numberWithBool:(BOOL)value; +@end + + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + * + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((swift_name("Model"))) +@interface KASCModel : KASCBase + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCModelCompanion *companion __attribute__((swift_name("companion"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AuthenticationModel"))) +@interface KASCAuthenticationModel : KASCModel +- (instancetype)initWithAuthScope:(NSString *)authScope tokenType:(NSString * _Nullable)tokenType expiresIn:(KASCInt * _Nullable)expiresIn accessToken:(NSString * _Nullable)accessToken refreshToken:(NSString * _Nullable)refreshToken __attribute__((swift_name("init(authScope:tokenType:expiresIn:accessToken:refreshToken:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCAuthenticationModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCAuthenticationModel *)doCopyAuthScope:(NSString *)authScope tokenType:(NSString * _Nullable)tokenType expiresIn:(KASCInt * _Nullable)expiresIn accessToken:(NSString * _Nullable)accessToken refreshToken:(NSString * _Nullable)refreshToken __attribute__((swift_name("doCopy(authScope:tokenType:expiresIn:accessToken:refreshToken:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable accessToken __attribute__((swift_name("accessToken"))); +@property (readonly) NSString *authScope __attribute__((swift_name("authScope"))); +@property (readonly) KASCInt * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); +@property (readonly) NSString * _Nullable refreshToken __attribute__((swift_name("refreshToken"))); +@property (readonly) NSString * _Nullable tokenType __attribute__((swift_name("tokenType"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AuthenticationModel.Companion"))) +@interface KASCAuthenticationModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCAuthenticationModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@property (readonly) NSString *ACCESS_TOKEN __attribute__((swift_name("ACCESS_TOKEN"))); +@property (readonly) NSString *AUTH_SCOPE __attribute__((swift_name("AUTH_SCOPE"))); +@property (readonly) NSString *REFRESH_TOKEN __attribute__((swift_name("REFRESH_TOKEN"))); +@end + +__attribute__((swift_name("KotlinComparable"))) +@protocol KASCKotlinComparable +@required +- (int32_t)compareToOther:(id _Nullable)other __attribute__((swift_name("compareTo(other:)"))); +@end + +__attribute__((swift_name("KotlinEnum"))) +@interface KASCKotlinEnum : KASCBase +- (instancetype)initWithName:(NSString *)name ordinal:(int32_t)ordinal __attribute__((swift_name("init(name:ordinal:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKotlinEnumCompanion *companion __attribute__((swift_name("companion"))); +- (int32_t)compareToOther:(E)other __attribute__((swift_name("compareTo(other:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *name __attribute__((swift_name("name"))); +@property (readonly) int32_t ordinal __attribute__((swift_name("ordinal"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AuthenticationScope"))) +@interface KASCAuthenticationScope : KASCKotlinEnum ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); +- (instancetype)initWithName:(NSString *)name ordinal:(int32_t)ordinal __attribute__((swift_name("init(name:ordinal:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly) KASCAuthenticationScope *customer __attribute__((swift_name("customer"))); +@property (class, readonly) KASCAuthenticationScope *business __attribute__((swift_name("business"))); ++ (KASCKotlinArray *)values __attribute__((swift_name("values()"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("KangarooSdk"))) +@interface KASCKangarooSdk : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (NSString * _Nullable)getPreferredLanguage __attribute__((swift_name("getPreferredLanguage()"))); + +/** + * Gets the access token. If null or empty, the session has expired. + */ +- (NSString * _Nullable)getSession __attribute__((swift_name("getSession()"))); + +/** + * Initializes the sdk. Accessing the sdk prior to running this command + * will throw an exception + */ +- (void)initializeApplicationKey:(NSString *)applicationKey clientId:(NSString *)clientId clientSecret:(NSString *)clientSecret environment:(NSString *)environment __attribute__((swift_name("initialize(applicationKey:clientId:clientSecret:environment:)"))); +- (void)killSession __attribute__((swift_name("killSession()"))); +- (void)setPreferredLanguageIso639LanguageCode:(NSString *)iso639LanguageCode __attribute__((swift_name("setPreferredLanguage(iso639LanguageCode:)"))); +@end + +__attribute__((swift_name("KotlinThrowable"))) +@interface KASCKotlinThrowable : KASCBase +- (instancetype)initWithMessage:(NSString * _Nullable)message __attribute__((swift_name("init(message:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithCause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(cause:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (instancetype)initWithMessage:(NSString * _Nullable)message cause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(message:cause:)"))) __attribute__((objc_designated_initializer)); +- (KASCKotlinArray *)getStackTrace __attribute__((swift_name("getStackTrace()"))); +- (void)printStackTrace __attribute__((swift_name("printStackTrace()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCKotlinThrowable * _Nullable cause __attribute__((swift_name("cause"))); +@property (readonly) NSString * _Nullable message __attribute__((swift_name("message"))); +- (NSError *)asError __attribute__((swift_name("asError()"))); +@end + +__attribute__((swift_name("KotlinException"))) +@interface KASCKotlinException : KASCKotlinThrowable +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (instancetype)initWithMessage:(NSString * _Nullable)message __attribute__((swift_name("init(message:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithMessage:(NSString * _Nullable)message cause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(message:cause:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithCause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(cause:)"))) __attribute__((objc_designated_initializer)); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("KangarooSdkNotInitializedException"))) +@interface KASCKangarooSdkNotInitializedException : KASCKotlinException +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (instancetype)initWithMessage:(NSString * _Nullable)message __attribute__((swift_name("init(message:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +- (instancetype)initWithMessage:(NSString * _Nullable)message cause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(message:cause:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +- (instancetype)initWithCause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(cause:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (readonly) NSString *message __attribute__((swift_name("message"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SdkContext"))) +@interface KASCSdkContext : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)sdkContext __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSdkContext *shared __attribute__((swift_name("shared"))); +@property (readonly) KASCStately_concurrencyAtomicReference *applicationKey __attribute__((swift_name("applicationKey"))); +@property (readonly) KASCStately_concurrencyAtomicReference *clientId __attribute__((swift_name("clientId"))); +@property (readonly) KASCStately_concurrencyAtomicReference *clientSecret __attribute__((swift_name("clientSecret"))); +@property (readonly) KASCStately_concurrencyAtomicReference *environment __attribute__((swift_name("environment"))); +@property (readonly) KASCStately_concurrencyAtomicBoolean *sdkInit __attribute__((swift_name("sdkInit"))); +@property (readonly) KASCStately_concurrencyAtomicReference *tokenStore __attribute__((swift_name("tokenStore"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TokenStore"))) +@interface KASCTokenStore : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (NSString * _Nullable)getPreferredLanguage __attribute__((swift_name("getPreferredLanguage()"))); +- (KASCAuthenticationModel * _Nullable)getTokens __attribute__((swift_name("getTokens()"))); +- (void)storeTokensTokens:(KASCAuthenticationModel *)tokens __attribute__((swift_name("storeTokens(tokens:)"))); +@end + +__attribute__((swift_name("NetworkRequest"))) +@interface KASCNetworkRequest : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCNetworkRequestCompanion *companion __attribute__((swift_name("companion"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)deleteEndpoint:(id)endpoint fields:(KASCKotlinArray *)fields completionHandler:(void (^)(KASCModel * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("delete(endpoint:fields:completionHandler:)"))); + +/** + * GET request + * + * @param fields Optional list of fields to send in the request. + * + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)getEndpoint:(id)endpoint fields:(KASCKotlinArray *)fields completionHandler:(void (^)(KASCModel * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("get(endpoint:fields:completionHandler:)"))); + +/** + * PATCH body data + * + * @param requestBody Request body for this patch request + * + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)patchEndpoint:(id)endpoint headers:(NSArray *)headers queries:(NSArray *)queries fields:(NSArray *)fields requestBody:(id _Nullable)requestBody completionHandler:(void (^)(KASCModel * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("patch(endpoint:headers:queries:fields:requestBody:completionHandler:)"))); + +/** + * POST body data + * + * @param requestBody Request body for this post request + * + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)postEndpoint:(id)endpoint headers:(NSArray *)headers queries:(NSArray *)queries fields:(NSArray *)fields requestBody:(id _Nullable)requestBody completionHandler:(void (^)(KASCModel * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("post(endpoint:headers:queries:fields:requestBody:completionHandler:)"))); + +/** + * POST form data + * + * @param fields List of fields to send in the request. If you are required to post your data + * as a Json object, use post() instead of postForm() + * + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)postFormEndpoint:(id)endpoint fields:(KASCKotlinArray *)fields completionHandler:(void (^)(KASCModel * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("postForm(endpoint:fields:completionHandler:)"))); + +/** + * PATCH body data + * + * @param requestBody Request body for this patch request + * + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)putEndpoint:(id)endpoint headers:(NSArray *)headers queries:(NSArray *)queries fields:(NSArray *)fields requestBody:(id _Nullable)requestBody completionHandler:(void (^)(KASCModel * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("put(endpoint:headers:queries:fields:requestBody:completionHandler:)"))); + +/** + * Base network call that handles all errors. No exceptions should be thrown from this function; + * any errors and successes should be wrapped into a NetworkResult to be handled by the consumer. + * + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)safeNetworkCallCall:(id)call completionHandler:(void (^)(KASCIOResult * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("safeNetworkCall(call:completionHandler:)"))); + +/** + * POST form data + * + * @param fields List of fields to send in the request. If you are required to post your data + * as a Json object, use post() instead of postForm() + * + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)submitRefreshTokensFormEndpoint:(id)endpoint fields:(KASCKotlinArray *)fields completionHandler:(void (^)(KASCModel * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("submitRefreshTokensForm(endpoint:fields:completionHandler:)"))); +- (void)buildPatchOrPostRequest:(KASCKtor_client_coreHttpRequestBuilder *)receiver endpoint:(id)endpoint headers:(NSArray *)headers queries:(NSArray *)queries fields:(NSArray *)fields requestBody:(id _Nullable)requestBody __attribute__((swift_name("buildPatchOrPostRequest(_:endpoint:headers:queries:fields:requestBody:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NetworkRequest.Companion"))) +@interface KASCNetworkRequestCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCNetworkRequestCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Field class for requests that send Fields. + * Basic Key-Value pair structure + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Field"))) +@interface KASCField : KASCBase +- (instancetype)initWithName:(NSString *)name value:(NSString *)value __attribute__((swift_name("init(name:value:)"))) __attribute__((objc_designated_initializer)); + +/** + * Field class for requests that send Fields. + * Basic Key-Value pair structure + */ +- (KASCField *)doCopyName:(NSString *)name value:(NSString *)value __attribute__((swift_name("doCopy(name:value:)"))); + +/** + * Field class for requests that send Fields. + * Basic Key-Value pair structure + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Field class for requests that send Fields. + * Basic Key-Value pair structure + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Field class for requests that send Fields. + * Basic Key-Value pair structure + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *name __attribute__((swift_name("name"))); +@property (readonly) NSString *value __attribute__((swift_name("value"))); +@end + + +/** + * FormField class used to build form requests + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FormField"))) +@interface KASCFormField : KASCBase +- (instancetype)initWithName:(NSString *)name value:(id _Nullable)value __attribute__((swift_name("init(name:value:)"))) __attribute__((objc_designated_initializer)); + +/** + * FormField class used to build form requests + */ +- (KASCFormField *)doCopyName:(NSString *)name value:(id _Nullable)value __attribute__((swift_name("doCopy(name:value:)"))); + +/** + * FormField class used to build form requests + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * FormField class used to build form requests + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * FormField class used to build form requests + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *name __attribute__((swift_name("name"))); +@property (readonly) id _Nullable value __attribute__((swift_name("value"))); +@end + + +/** + * Header class used to build requests + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Header"))) +@interface KASCHeader : KASCBase +- (instancetype)initWithName:(NSString *)name value:(id _Nullable)value __attribute__((swift_name("init(name:value:)"))) __attribute__((objc_designated_initializer)); + +/** + * Header class used to build requests + */ +- (KASCHeader *)doCopyName:(NSString *)name value:(id _Nullable)value __attribute__((swift_name("doCopy(name:value:)"))); + +/** + * Header class used to build requests + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Header class used to build requests + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Header class used to build requests + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *name __attribute__((swift_name("name"))); +@property (readonly) id _Nullable value __attribute__((swift_name("value"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("KHttpClient"))) +@interface KASCKHttpClient : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)kHttpClient __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKHttpClient *shared __attribute__((swift_name("shared"))); + +/** + * Http client used for all http requests + */ +@property (readonly) KASCKtor_client_coreHttpClient *client __attribute__((swift_name("client"))); +@end + + +/** + * Thrown when the device has no internet connection. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NoConnectivityException"))) +@interface KASCNoConnectivityException : KASCKotlinException + +/** + * Thrown when the device has no internet connection. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Thrown when the device has no internet connection. + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (instancetype)initWithMessage:(NSString * _Nullable)message __attribute__((swift_name("init(message:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +- (instancetype)initWithMessage:(NSString * _Nullable)message cause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(message:cause:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +- (instancetype)initWithCause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(cause:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (readonly) NSString *message __attribute__((swift_name("message"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PathParameter"))) +@interface KASCPathParameter : KASCBase +- (instancetype)initWithSubPath:(NSString *)subPath value:(id _Nullable)value __attribute__((swift_name("init(subPath:value:)"))) __attribute__((objc_designated_initializer)); +- (KASCPathParameter *)doCopySubPath:(NSString *)subPath value:(id _Nullable)value __attribute__((swift_name("doCopy(subPath:value:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *subPath __attribute__((swift_name("subPath"))); +@property (readonly) id _Nullable value __attribute__((swift_name("value"))); +@end + + +/** + * Query class used to build requests + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Query"))) +@interface KASCQuery : KASCBase +- (instancetype)initWithName:(NSString *)name value:(id _Nullable)value __attribute__((swift_name("init(name:value:)"))) __attribute__((objc_designated_initializer)); + +/** + * Query class used to build requests + */ +- (KASCQuery *)doCopyName:(NSString *)name value:(id _Nullable)value __attribute__((swift_name("doCopy(name:value:)"))); + +/** + * Query class used to build requests + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Query class used to build requests + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Query class used to build requests + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *name __attribute__((swift_name("name"))); +@property (readonly) id _Nullable value __attribute__((swift_name("value"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserReAuthenticationModel"))) +@interface KASCUserReAuthenticationModel : KASCModel +- (instancetype)initWithTokenType:(NSString * _Nullable)tokenType expiresIn:(KASCInt * _Nullable)expiresIn accessToken:(NSString * _Nullable)accessToken refreshToken:(NSString * _Nullable)refreshToken __attribute__((swift_name("init(tokenType:expiresIn:accessToken:refreshToken:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserReAuthenticationModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserReAuthenticationModel *)doCopyTokenType:(NSString * _Nullable)tokenType expiresIn:(KASCInt * _Nullable)expiresIn accessToken:(NSString * _Nullable)accessToken refreshToken:(NSString * _Nullable)refreshToken __attribute__((swift_name("doCopy(tokenType:expiresIn:accessToken:refreshToken:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable accessToken __attribute__((swift_name("accessToken"))); +@property (readonly) KASCInt * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); +@property (readonly) NSString * _Nullable refreshToken __attribute__((swift_name("refreshToken"))); +@property (readonly) NSString * _Nullable tokenType __attribute__((swift_name("tokenType"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserReAuthenticationModel.Companion"))) +@interface KASCUserReAuthenticationModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserReAuthenticationModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@property (readonly) NSString *ACCESS_TOKEN __attribute__((swift_name("ACCESS_TOKEN"))); +@property (readonly) NSString *REFRESH_TOKEN __attribute__((swift_name("REFRESH_TOKEN"))); +@end + + +/** + * Language feature for [HttpClient]. + * + * @property language: value of Accept-Language header to set. Must conform to + * ISO 639-1 kangaroorewards.appsdk.core.utils.language code format. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language"))) +@interface KASCLanguage : KASCBase +- (instancetype)initWithLanguage:(NSString *)language __attribute__((swift_name("init(language:)"))) __attribute__((objc_designated_initializer)); +@end + + +/** + * Base class for all Api classes in the SDK. Api classes are the + * gateway to all functionality in the sdk, and will throw an error + * if they are accessed before the sdk has been initialized. + */ +__attribute__((swift_name("Api"))) +@interface KASCApi : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@end + +__attribute__((swift_name("ModelOld"))) +@interface KASCModelOld : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@end + +__attribute__((swift_name("ModelList"))) +@interface KASCModelList : KASCModelOld +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (readonly) NSArray *all __attribute__((swift_name("all"))); +@end + + +/** + * Base result class returned from all [Api] calls. + * Result will wrap various states such as Success, Error, Loading, etc... + */ +__attribute__((swift_name("Result"))) +@interface KASCResult<__covariant T> : KASCBase +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultEmptyResponse"))) +@interface KASCResultEmptyResponse<__covariant T> : KASCResult +- (instancetype)initWithBody:(NSString *)body __attribute__((swift_name("init(body:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCResultEmptyResponseCompanion *companion __attribute__((swift_name("companion"))); +- (KASCResultEmptyResponse *)doCopyBody:(NSString *)body __attribute__((swift_name("doCopy(body:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *body __attribute__((swift_name("body"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultEmptyResponseCompanion"))) +@interface KASCResultEmptyResponseCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCResultEmptyResponseCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializerTypeParamsSerializers:(KASCKotlinArray> *)typeParamsSerializers __attribute__((swift_name("serializer(typeParamsSerializers:)"))); +- (id)serializerTypeSerial0:(id)typeSerial0 __attribute__((swift_name("serializer(typeSerial0:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultIdle"))) +@interface KASCResultIdle<__covariant T> : KASCResult +- (instancetype)initWithState:(KASCResultMetaData *)state __attribute__((swift_name("init(state:)"))) __attribute__((objc_designated_initializer)); +- (KASCResultIdle *)doCopyState:(KASCResultMetaData *)state __attribute__((swift_name("doCopy(state:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCResultMetaData *state __attribute__((swift_name("state"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultLoading"))) +@interface KASCResultLoading<__covariant T> : KASCResult +- (instancetype)initWithState:(KASCResultMetaData *)state __attribute__((swift_name("init(state:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCResultLoadingCompanion *companion __attribute__((swift_name("companion"))); +- (KASCResultLoading *)doCopyState:(KASCResultMetaData *)state __attribute__((swift_name("doCopy(state:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCResultMetaData *state __attribute__((swift_name("state"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultLoadingCompanion"))) +@interface KASCResultLoadingCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCResultLoadingCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializerTypeParamsSerializers:(KASCKotlinArray> *)typeParamsSerializers __attribute__((swift_name("serializer(typeParamsSerializers:)"))); +- (id)serializerTypeSerial0:(id)typeSerial0 __attribute__((swift_name("serializer(typeSerial0:)"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultSuccess"))) +@interface KASCResultSuccess<__covariant T> : KASCResult +- (instancetype)initWithData:(T)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCResultSuccessCompanion *companion __attribute__((swift_name("companion"))); +- (KASCResultSuccess *)doCopyData:(T)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) T data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultSuccessCompanion"))) +@interface KASCResultSuccessCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCResultSuccessCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializerTypeParamsSerializers:(KASCKotlinArray> *)typeParamsSerializers __attribute__((swift_name("serializer(typeParamsSerializers:)"))); +- (id)serializerTypeSerial0:(id)typeSerial0 __attribute__((swift_name("serializer(typeSerial0:)"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultUnauthorizedError"))) +@interface KASCResultUnauthorizedError<__covariant T> : KASCResult +- (instancetype)initWithError:(KASCResultMetaData *)error __attribute__((swift_name("init(error:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCResultUnauthorizedErrorCompanion *companion __attribute__((swift_name("companion"))); +- (KASCResultUnauthorizedError *)doCopyError:(KASCResultMetaData *)error __attribute__((swift_name("doCopy(error:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCResultMetaData *error __attribute__((swift_name("error"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultUnauthorizedErrorCompanion"))) +@interface KASCResultUnauthorizedErrorCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCResultUnauthorizedErrorCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializerTypeParamsSerializers:(KASCKotlinArray> *)typeParamsSerializers __attribute__((swift_name("serializer(typeParamsSerializers:)"))); +- (id)serializerTypeSerial0:(id)typeSerial0 __attribute__((swift_name("serializer(typeSerial0:)"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultUnknownError"))) +@interface KASCResultUnknownError<__covariant T> : KASCResult +- (instancetype)initWithError:(KASCResultMetaData *)error __attribute__((swift_name("init(error:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCResultUnknownErrorCompanion *companion __attribute__((swift_name("companion"))); +- (KASCResultUnknownError *)doCopyError:(KASCResultMetaData *)error __attribute__((swift_name("doCopy(error:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCResultMetaData *error __attribute__((swift_name("error"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultUnknownErrorCompanion"))) +@interface KASCResultUnknownErrorCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCResultUnknownErrorCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializerTypeParamsSerializers:(KASCKotlinArray> *)typeParamsSerializers __attribute__((swift_name("serializer(typeParamsSerializers:)"))); +- (id)serializerTypeSerial0:(id)typeSerial0 __attribute__((swift_name("serializer(typeSerial0:)"))); +@end + + +/** + * Metadata class used to store serializable information + * about [Result] states. Any state that is not [Result.Success] + * should contain metadata. + * + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultMetaData"))) +@interface KASCResultMetaData : KASCBase +- (instancetype)initWithType:(NSString *)type code:(int32_t)code msg:(NSString *)msg __attribute__((swift_name("init(type:code:msg:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCResultMetaDataCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Metadata class used to store serializable information + * about [Result] states. Any state that is not [Result.Success] + * should contain metadata. + */ +- (KASCResultMetaData *)doCopyType:(NSString *)type code:(int32_t)code msg:(NSString *)msg __attribute__((swift_name("doCopy(type:code:msg:)"))); + +/** + * Metadata class used to store serializable information + * about [Result] states. Any state that is not [Result.Success] + * should contain metadata. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Metadata class used to store serializable information + * about [Result] states. Any state that is not [Result.Success] + * should contain metadata. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Metadata class used to store serializable information + * about [Result] states. Any state that is not [Result.Success] + * should contain metadata. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) int32_t code __attribute__((swift_name("code"))); +@property (readonly) NSString *msg __attribute__((swift_name("msg"))); + +/** Must match the class name of the Error being returned eg "UnauthorizedError" */ +@property (readonly) NSString *type __attribute__((swift_name("type"))); +@end + + +/** + * Metadata class used to store serializable information + * about [Result] states. Any state that is not [Result.Success] + * should contain metadata. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ResultMetaData.Companion"))) +@interface KASCResultMetaDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Metadata class used to store serializable information + * about [Result] states. Any state that is not [Result.Success] + * should contain metadata. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCResultMetaDataCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Metadata class used to store serializable information + * about [Result] states. Any state that is not [Result.Success] + * should contain metadata. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport +*/ +__attribute__((swift_name("SerializedResult"))) +@interface KASCSerializedResult<__covariant T> : KASCBase +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultEmptyResponse"))) +@interface KASCSerializedResultEmptyResponse : KASCSerializedResult +- (instancetype)initWithBody:(NSString *)body __attribute__((swift_name("init(body:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCSerializedResultEmptyResponseCompanion *companion __attribute__((swift_name("companion"))); +- (KASCSerializedResultEmptyResponse *)doCopyBody:(NSString *)body __attribute__((swift_name("doCopy(body:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *body __attribute__((swift_name("body"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultEmptyResponse.Companion"))) +@interface KASCSerializedResultEmptyResponseCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSerializedResultEmptyResponseCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultIdle"))) +@interface KASCSerializedResultIdle : KASCSerializedResult +- (instancetype)initWithState:(NSString *)state __attribute__((swift_name("init(state:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCSerializedResultIdleCompanion *companion __attribute__((swift_name("companion"))); +- (KASCSerializedResultIdle *)doCopyState:(NSString *)state __attribute__((swift_name("doCopy(state:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *state __attribute__((swift_name("state"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultIdle.Companion"))) +@interface KASCSerializedResultIdleCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSerializedResultIdleCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultLoading"))) +@interface KASCSerializedResultLoading : KASCSerializedResult +- (instancetype)initWithState:(NSString *)state __attribute__((swift_name("init(state:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCSerializedResultLoadingCompanion *companion __attribute__((swift_name("companion"))); +- (KASCSerializedResultLoading *)doCopyState:(NSString *)state __attribute__((swift_name("doCopy(state:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *state __attribute__((swift_name("state"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultLoading.Companion"))) +@interface KASCSerializedResultLoadingCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSerializedResultLoadingCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultSuccess"))) +@interface KASCSerializedResultSuccess : KASCSerializedResult +- (instancetype)initWithData:(NSString *)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCSerializedResultSuccessCompanion *companion __attribute__((swift_name("companion"))); +- (KASCSerializedResultSuccess *)doCopyData:(NSString *)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultSuccess.Companion"))) +@interface KASCSerializedResultSuccessCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSerializedResultSuccessCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultUnauthorizedError"))) +@interface KASCSerializedResultUnauthorizedError : KASCSerializedResult +- (instancetype)initWithError:(NSString *)error __attribute__((swift_name("init(error:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCSerializedResultUnauthorizedErrorCompanion *companion __attribute__((swift_name("companion"))); +- (KASCSerializedResultUnauthorizedError *)doCopyError:(NSString *)error __attribute__((swift_name("doCopy(error:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *error __attribute__((swift_name("error"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultUnauthorizedError.Companion"))) +@interface KASCSerializedResultUnauthorizedErrorCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSerializedResultUnauthorizedErrorCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultUnknownError"))) +@interface KASCSerializedResultUnknownError : KASCSerializedResult +- (instancetype)initWithError:(NSString *)error __attribute__((swift_name("init(error:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCSerializedResultUnknownErrorCompanion *companion __attribute__((swift_name("companion"))); +- (KASCSerializedResultUnknownError *)doCopyError:(NSString *)error __attribute__((swift_name("doCopy(error:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *error __attribute__((swift_name("error"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SerializedResultUnknownError.Companion"))) +@interface KASCSerializedResultUnknownErrorCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSerializedResultUnknownErrorCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Abstract class for a Use Case. + * This abstraction represents an execution unit for different use cases (this means that any use + * case in the application should implement this contract). + * + * By convention, each [UseCase] implementation will execute its job on a background thread + * (kotlin coroutine) and will post the result in the UI thread. + */ +__attribute__((swift_name("UseCase"))) +@interface KASCUseCase<__covariant T, __contravariant Params> : KASCBase + +/** + * Abstract class for a Use Case. + * This abstraction represents an execution unit for different use cases (this means that any use + * case in the application should implement this contract). + * + * By convention, each [UseCase] implementation will execute its job on a background thread + * (kotlin coroutine) and will post the result in the UI thread. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Abstract class for a Use Case. + * This abstraction represents an execution unit for different use cases (this means that any use + * case in the application should implement this contract). + * + * By convention, each [UseCase] implementation will execute its job on a background thread + * (kotlin coroutine) and will post the result in the UI thread. + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (void)invokeParams:(Params _Nullable)params onResult:(void (^)(KASCResult *))onResult __attribute__((swift_name("invoke(params:onResult:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)runParams:(Params _Nullable)params completionHandler:(void (^)(KASCResult * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("run(params:completionHandler:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UseCaseNone"))) +@interface KASCUseCaseNone : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreFlow"))) +@protocol KASCKotlinx_coroutines_coreFlow +@required + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)collectCollector:(id)collector completionHandler:(void (^)(NSError * _Nullable))completionHandler __attribute__((swift_name("collect(collector:completionHandler:)"))); +@end + + +/** + * Common Flow wrapper which can be observed from JVM and Native code + * + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CFlow"))) +@interface KASCCFlow : KASCBase +- (instancetype)initWithOrigin:(id)origin __attribute__((swift_name("init(origin:)"))) __attribute__((objc_designated_initializer)); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)collectCollector:(id)collector completionHandler:(void (^)(NSError * _Nullable))completionHandler __attribute__((swift_name("collect(collector:completionHandler:)"))); + +/** + * Observes the flow for value updates. + */ +- (id)observeBlock:(void (^)(T _Nullable))block __attribute__((swift_name("observe(block:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Configuration"))) +@interface KASCConfiguration : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)configuration __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCConfiguration *shared __attribute__((swift_name("shared"))); +- (NSString *)getBaseUrl __attribute__((swift_name("getBaseUrl()"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("MultiRequestApi"))) +@interface KASCMultiRequestApi : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (NSMutableArray *> *)sendMultiRequestFunctions:(KASCKotlinArray> *)functions __attribute__((swift_name("sendMultiRequest(functions:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_"))) +@interface KASCLanguage_ : KASCBase +- (instancetype)initWithId:(int32_t)id code:(NSString *)code name:(NSString *)name __attribute__((swift_name("init(id:code:name:)"))) __attribute__((objc_designated_initializer)); +- (KASCLanguage_ *)doCopyId:(int32_t)id code:(NSString *)code name:(NSString *)name __attribute__((swift_name("doCopy(id:code:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *code __attribute__((swift_name("code"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); +@property (readonly) NSString *name __attribute__((swift_name("name"))); +@end + +__attribute__((swift_name("Translation"))) +@interface KASCTranslation : KASCModelOld +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (readonly) KASCLanguage_ *language __attribute__((swift_name("language"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardTranslation"))) +@interface KASCRewardTranslation : KASCTranslation +- (instancetype)initWithTitle:(NSString *)title description:(NSString *)description termsAndConditions:(NSString *)termsAndConditions link:(NSString *)link language:(KASCLanguage_ *)language __attribute__((swift_name("init(title:description:termsAndConditions:link:language:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +- (KASCRewardTranslation *)doCopyTitle:(NSString *)title description:(NSString *)description termsAndConditions:(NSString *)termsAndConditions link:(NSString *)link language:(KASCLanguage_ *)language __attribute__((swift_name("doCopy(title:description:termsAndConditions:link:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCLanguage_ *language __attribute__((swift_name("language"))); +@property (readonly) NSString *link __attribute__((swift_name("link"))); +@property (readonly) NSString *termsAndConditions __attribute__((swift_name("termsAndConditions"))); +@property (readonly) NSString *title __attribute__((swift_name("title"))); +@end + + +/** + * Represents an empty response. This could be either a successful response + * or an error - it simply means the http response has no body. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("EmptyResponse"))) +@interface KASCEmptyResponse : KASCModel ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents an empty response. This could be either a successful response + * or an error - it simply means the http response has no body. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); ++ (instancetype)emptyResponse __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCEmptyResponse *shared __attribute__((swift_name("shared"))); + +/** + * Represents an empty response. This could be either a successful response + * or an error - it simply means the http response has no body. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); + +/** + * Represents an empty response. This could be either a successful response + * or an error - it simply means the http response has no body. + */ +- (id)serializerTypeParamsSerializers:(KASCKotlinArray> *)typeParamsSerializers __attribute__((swift_name("serializer(typeParamsSerializers:)"))); +@end + +__attribute__((swift_name("IOResult"))) +@interface KASCIOResult<__covariant T> : KASCBase +@end + +__attribute__((swift_name("IOResultError"))) +@interface KASCIOResultError : KASCIOResult +- (instancetype)initWithError:(KASCResultMetaData *)error __attribute__((swift_name("init(error:)"))) __attribute__((objc_designated_initializer)); +@property (readonly) KASCResultMetaData *error __attribute__((swift_name("error"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("IOResultConnectionError"))) +@interface KASCIOResultConnectionError : KASCIOResultError +- (instancetype)initWithError:(KASCResultMetaData *)error __attribute__((swift_name("init(error:)"))) __attribute__((objc_designated_initializer)); +- (KASCIOResultConnectionError *)doCopyError:(KASCResultMetaData *)error __attribute__((swift_name("doCopy(error:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCResultMetaData *error __attribute__((swift_name("error"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("IOResultEmptyResponse"))) +@interface KASCIOResultEmptyResponse : KASCIOResult +- (instancetype)initWithBody:(NSString *)body __attribute__((swift_name("init(body:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCIOResultEmptyResponseCompanion *companion __attribute__((swift_name("companion"))); +- (KASCIOResultEmptyResponse *)doCopyBody:(NSString *)body __attribute__((swift_name("doCopy(body:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *body __attribute__((swift_name("body"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("IOResultEmptyResponse.Companion"))) +@interface KASCIOResultEmptyResponseCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCIOResultEmptyResponseCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("IOResultIdle"))) +@interface KASCIOResultIdle : KASCIOResult +- (instancetype)initWithState:(KASCResultMetaData *)state __attribute__((swift_name("init(state:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCIOResultIdleCompanion *companion __attribute__((swift_name("companion"))); +- (KASCIOResultIdle *)doCopyState:(KASCResultMetaData *)state __attribute__((swift_name("doCopy(state:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCResultMetaData *state __attribute__((swift_name("state"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("IOResultIdle.Companion"))) +@interface KASCIOResultIdleCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCIOResultIdleCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("IOResultLoading"))) +@interface KASCIOResultLoading : KASCIOResult +- (instancetype)initWithState:(KASCResultMetaData *)state __attribute__((swift_name("init(state:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCIOResultLoadingCompanion *companion __attribute__((swift_name("companion"))); +@property (readonly) KASCResultMetaData *state __attribute__((swift_name("state"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("IOResultLoading.Companion"))) +@interface KASCIOResultLoadingCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCIOResultLoadingCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("IOResultSuccess"))) +@interface KASCIOResultSuccess<__covariant T> : KASCIOResult +- (instancetype)initWithData:(T)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); +- (KASCIOResultSuccess *)doCopyData:(T)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) T data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("IOResultTimeoutError"))) +@interface KASCIOResultTimeoutError : KASCIOResultError +- (instancetype)initWithError:(KASCResultMetaData *)error __attribute__((swift_name("init(error:)"))) __attribute__((objc_designated_initializer)); +- (KASCIOResultTimeoutError *)doCopyError:(KASCResultMetaData *)error __attribute__((swift_name("doCopy(error:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCResultMetaData *error __attribute__((swift_name("error"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("IOResultUnauthorizedError"))) +@interface KASCIOResultUnauthorizedError : KASCIOResultError +- (instancetype)initWithError:(KASCResultMetaData *)error __attribute__((swift_name("init(error:)"))) __attribute__((objc_designated_initializer)); +- (KASCIOResultUnauthorizedError *)doCopyError:(KASCResultMetaData *)error __attribute__((swift_name("doCopy(error:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCResultMetaData *error __attribute__((swift_name("error"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("IOResultUnknownError"))) +@interface KASCIOResultUnknownError : KASCIOResultError +- (instancetype)initWithError:(KASCResultMetaData *)error __attribute__((swift_name("init(error:)"))) __attribute__((objc_designated_initializer)); +- (KASCIOResultUnknownError *)doCopyError:(KASCResultMetaData *)error __attribute__((swift_name("doCopy(error:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCResultMetaData *error __attribute__((swift_name("error"))); +@end + + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Model.Companion"))) +@interface KASCModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (id)serializerTypeParamsSerializers:(KASCKotlinArray> *)typeParamsSerializers __attribute__((swift_name("serializer(typeParamsSerializers:)"))); +@end + + +/** + * Get a users notification settings for a conglomerate business. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GetConglomerateNotificationPreferencesApi"))) +@interface KASCGetConglomerateNotificationPreferencesApi : KASCApi + +/** + * Get a users notification settings for a conglomerate business. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a users notification settings for a conglomerate business. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCGetConglomerateNotificationPreferencesApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a users notification settings for a conglomerate business. + */ +- (KASCCFlow *> *)getConglomerateNotificationPreferences __attribute__((swift_name("getConglomerateNotificationPreferences()"))); +@property (readonly) KASCCFlow *> *getConglomerateNotificationPreferencesState __attribute__((swift_name("getConglomerateNotificationPreferencesState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GetConglomerateNotificationPreferencesApi.Companion"))) +@interface KASCGetConglomerateNotificationPreferencesApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGetConglomerateNotificationPreferencesApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * The business who these settings this affect. This is not required when updating notification settings. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationBusinessPayload"))) +@interface KASCNotificationBusinessPayload : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name __attribute__((swift_name("init(id:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCNotificationBusinessPayloadCompanion *companion __attribute__((swift_name("companion"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (KASCNotificationBusinessPayload *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:name:)"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationBusinessPayload.Companion"))) +@interface KASCNotificationBusinessPayloadCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCNotificationBusinessPayloadCompanion *shared __attribute__((swift_name("shared"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsData"))) +@interface KASCNotificationSettingsData : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id business:(KASCNotificationBusinessPayload * _Nullable)business allowEmail:(KASCBoolean * _Nullable)allowEmail allowSms:(KASCBoolean * _Nullable)allowSms allowPush:(KASCBoolean * _Nullable)allowPush __attribute__((swift_name("init(id:business:allowEmail:allowSms:allowPush:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCNotificationSettingsDataCompanion *companion __attribute__((swift_name("companion"))); +- (KASCNotificationSettingsData *)doCopyId:(NSString * _Nullable)id business:(KASCNotificationBusinessPayload * _Nullable)business allowEmail:(KASCBoolean * _Nullable)allowEmail allowSms:(KASCBoolean * _Nullable)allowSms allowPush:(KASCBoolean * _Nullable)allowPush __attribute__((swift_name("doCopy(id:business:allowEmail:allowSms:allowPush:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCBoolean * _Nullable allowEmail __attribute__((swift_name("allowEmail"))); +@property (readonly) KASCBoolean * _Nullable allowPush __attribute__((swift_name("allowPush"))); +@property (readonly) KASCBoolean * _Nullable allowSms __attribute__((swift_name("allowSms"))); +@property (readonly) KASCNotificationBusinessPayload * _Nullable business __attribute__((swift_name("business"))); + +/** The notification settings id. This is not required when updating notification settings. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsData.Companion"))) +@interface KASCNotificationSettingsDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCNotificationSettingsDataCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsModel"))) +@interface KASCNotificationSettingsModel : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCNotificationSettingsModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCNotificationSettingsModel *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsModel.Companion"))) +@interface KASCNotificationSettingsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCNotificationSettingsModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Acquires information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TiersApi"))) +@interface KASCTiersApi : KASCApi + +/** + * Acquires information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Acquires information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCTiersApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Acquires information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. + */ +- (KASCCFlow *> *)getTiers __attribute__((swift_name("getTiers()"))); +@property (readonly) KASCCFlow *> *tiersState __attribute__((swift_name("tiersState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TiersApi.Companion"))) +@interface KASCTiersApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTiersApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language__"))) +@interface KASCLanguage__ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage__Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage__ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language__.Companion"))) +@interface KASCLanguage__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Tier"))) +@interface KASCTier : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id tiersSequence:(NSArray * _Nullable)tiersSequence isCombined:(KASCBoolean * _Nullable)isCombined resetType:(KASCInt * _Nullable)resetType resetPeriodMonth:(KASCInt * _Nullable)resetPeriodMonth basePreviousPeriod:(KASCInt * _Nullable)basePreviousPeriod enabled:(KASCBoolean * _Nullable)enabled defaultTierIcon:(NSString * _Nullable)defaultTierIcon tierLevels:(NSArray * _Nullable)tierLevels resetByCustomerRegistrationMonth:(KASCBoolean * _Nullable)resetByCustomerRegistrationMonth gracePeriod:(NSString * _Nullable)gracePeriod __attribute__((swift_name("init(id:tiersSequence:isCombined:resetType:resetPeriodMonth:basePreviousPeriod:enabled:defaultTierIcon:tierLevels:resetByCustomerRegistrationMonth:gracePeriod:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierCompanion *companion __attribute__((swift_name("companion"))); +- (KASCTier *)doCopyId:(KASCLong * _Nullable)id tiersSequence:(NSArray * _Nullable)tiersSequence isCombined:(KASCBoolean * _Nullable)isCombined resetType:(KASCInt * _Nullable)resetType resetPeriodMonth:(KASCInt * _Nullable)resetPeriodMonth basePreviousPeriod:(KASCInt * _Nullable)basePreviousPeriod enabled:(KASCBoolean * _Nullable)enabled defaultTierIcon:(NSString * _Nullable)defaultTierIcon tierLevels:(NSArray * _Nullable)tierLevels resetByCustomerRegistrationMonth:(KASCBoolean * _Nullable)resetByCustomerRegistrationMonth gracePeriod:(NSString * _Nullable)gracePeriod __attribute__((swift_name("doCopy(id:tiersSequence:isCombined:resetType:resetPeriodMonth:basePreviousPeriod:enabled:defaultTierIcon:tierLevels:resetByCustomerRegistrationMonth:gracePeriod:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCInt * _Nullable basePreviousPeriod __attribute__((swift_name("basePreviousPeriod"))); + +/** Default icon to show in case the user has no current tier level. */ +@property (readonly) NSString * _Nullable defaultTierIcon __attribute__((swift_name("defaultTierIcon"))); + +/** Whether this tier program is currently enabled or disabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** How many months after the reset month. */ +@property (readonly) NSString * _Nullable gracePeriod __attribute__((swift_name("gracePeriod"))); + +/** The ID for this tier program. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** If the tier program is an 'and' or 'or' */ +@property (readonly) KASCBoolean * _Nullable isCombined __attribute__((swift_name("isCombined"))); + +/** To control whether to use customer registration month for reset.. */ +@property (readonly) KASCBoolean * _Nullable resetByCustomerRegistrationMonth __attribute__((swift_name("resetByCustomerRegistrationMonth"))); + +/** The month in which this tier program will reset. */ +@property (readonly) KASCInt * _Nullable resetPeriodMonth __attribute__((swift_name("resetPeriodMonth"))); +@property (readonly) KASCInt * _Nullable resetType __attribute__((swift_name("resetType"))); + +/** The various tier levels within this tier program. */ +@property (readonly) NSArray * _Nullable tierLevels __attribute__((swift_name("tierLevels"))); + +/** The sequence for this tier program. */ +@property (readonly) NSArray * _Nullable tiersSequence __attribute__((swift_name("tiersSequence"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Tier.Companion"))) +@interface KASCTierCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel"))) +@interface KASCTierLevel : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier level. + */ +- (KASCTierLevel *)doCopyId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))); + +/** + * Represents a single tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The icon of this tier level. */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** The ID for this tier. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** translation for each tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); + +/** The name of this tier level. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount of points acquired that is required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachPoints __attribute__((swift_name("reachPoints"))); + +/** The amount of money spent required to reach this tier. */ +@property (readonly) KASCFloat * _Nullable reachSpend __attribute__((swift_name("reachSpend"))); + +/** The amount of visits made to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachVisits __attribute__((swift_name("reachVisits"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable tierPerks __attribute__((swift_name("tierPerks"))); +@end + + +/** + * Represents a single tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel.Companion"))) +@interface KASCTierLevelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation"))) +@interface KASCTierLevelTranslation : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage__ * _Nullable)language __attribute__((swift_name("init(languageId:name:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevelTranslationCompanion *companion __attribute__((swift_name("companion"))); +- (KASCTierLevelTranslation *)doCopyLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage__ * _Nullable)language __attribute__((swift_name("doCopy(languageId:name:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The description of this tier level as translated. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage__ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation.Companion"))) +@interface KASCTierLevelTranslationCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevelTranslationCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier perk for a tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk"))) +@interface KASCTierPerk : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerkCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (KASCTierPerk *)doCopyId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Whether this tier perk is currently enabled or disabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The ID for this tier perk. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Whether the offer this tier perk is currently attached to is expired or not. */ +@property (readonly) KASCBoolean * _Nullable isExpired __attribute__((swift_name("isExpired"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); +@property (readonly) KASCLong * _Nullable offerId __attribute__((swift_name("offerId"))); +@property (readonly) KASCLong * _Nullable punchItemId __attribute__((swift_name("punchItemId"))); + +/** The ID for the tier level this tier perk is related to. */ +@property (readonly) KASCLong * _Nullable tierId __attribute__((swift_name("tierId"))); + +/** The title of this tier perk. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + + +/** + * Represents a single tier perk for a tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk.Companion"))) +@interface KASCTierPerkCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier perk for a tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerkCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation"))) +@interface KASCTierPerkTranslation : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage__ * _Nullable)language __attribute__((swift_name("init(languageId:title:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerkTranslationCompanion *companion __attribute__((swift_name("companion"))); +- (KASCTierPerkTranslation *)doCopyLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage__ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage__ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation.Companion"))) +@interface KASCTierPerkTranslationCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerkTranslationCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgramInclude"))) +@interface KASCTierProgramInclude : KASCBase +- (instancetype)initWithTierLevel:(KASCUserTierLevel * _Nullable)tierLevel tiers:(NSArray * _Nullable)tiers tierProgress:(KASCTierProgress * _Nullable)tierProgress __attribute__((swift_name("init(tierLevel:tiers:tierProgress:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierProgramIncludeCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. + */ +- (KASCTierProgramInclude *)doCopyTierLevel:(KASCUserTierLevel * _Nullable)tierLevel tiers:(NSArray * _Nullable)tiers tierProgress:(KASCTierProgress * _Nullable)tierProgress __attribute__((swift_name("doCopy(tierLevel:tiers:tierProgress:)"))); + +/** + * Information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** User's tier status. */ +@property (readonly) KASCUserTierLevel * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** User's tier progress and status. If a user's tier status is statically fixed, this will be null as they do not progress from tier to tier. */ +@property (readonly) KASCTierProgress * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); + +/** Information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. */ +@property (readonly) NSArray * _Nullable tiers __attribute__((swift_name("tiers"))); +@end + + +/** + * Information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgramInclude.Companion"))) +@interface KASCTierProgramIncludeCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierProgramIncludeCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Information about the tier program. Users can move through different tiers if a business has activated their tier program. By acquire points, making purchases, and visiting the business, the user can be rewarded with different tier levels. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress"))) +@interface KASCTierProgress : KASCBase +- (instancetype)initWithStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("init(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierProgressCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (KASCTierProgress *)doCopyStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("doCopy(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The end date for this tier session. The tier will be reset once this date is reached. */ +@property (readonly) NSString * _Nullable endDate __attribute__((swift_name("endDate"))); + +/** The amount of spend left in the user's current tier progress. Once they have acquired this many more amount of spend, they will be moved into the next tier. */ +@property (readonly) KASCFloat * _Nullable leftAmount __attribute__((swift_name("leftAmount"))); + +/** The amount of points left in the user's current tier progress. Once they have acquired this many more amount of points, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftPoints __attribute__((swift_name("leftPoints"))); + +/** The amount of visits left in the user's current tier progress. Once they have acquired this many more amount of visits, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftVisits __attribute__((swift_name("leftVisits"))); + +/** The name of the user's next tier level. */ +@property (readonly) NSString * _Nullable nextTierLevel __attribute__((swift_name("nextTierLevel"))); + +/** The start date for this tier session. */ +@property (readonly) NSString * _Nullable startDate __attribute__((swift_name("startDate"))); + +/** The name of the user's current tier level */ +@property (readonly) NSString * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** The name of the user's current tier level. Tiers are recalculated once per day, as such \"tier_level\" may not be completely up to date. */ +@property (readonly) NSString * _Nullable tierLevelLive __attribute__((swift_name("tierLevelLive"))); + +/** The users current tier progress in their \"tier_level\". This will be a number between 0 and 1. A tier progress of 0.5 means that the user has made 50% progress in their current tier. */ +@property (readonly) KASCFloat * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); + +/** Purchase amount between start_date and end_date. */ +@property (readonly) KASCFloat * _Nullable totalAmount __attribute__((swift_name("totalAmount"))); + +/** Purchase points between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalPoints __attribute__((swift_name("totalPoints"))); + +/** Purchase visits between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalVisits __attribute__((swift_name("totalVisits"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress.Companion"))) +@interface KASCTierProgressCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierProgressCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel"))) +@interface KASCUserProfileDataModel : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel.Companion"))) +@interface KASCUserProfileDataModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data and tier program data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileWithTierProgram"))) +@interface KASCUserProfileWithTierProgram : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel * _Nullable)data included:(KASCTierProgramInclude * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileWithTierProgramCompanion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data and tier program data + */ +- (KASCUserProfileWithTierProgram *)doCopyData:(KASCUserProfileDataModel * _Nullable)data included:(KASCTierProgramInclude * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Profile model class containing user data and tier program data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data and tier program data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data and tier program data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user profile data */ +@property (readonly) KASCUserProfileDataModel * _Nullable data __attribute__((swift_name("data"))); + +/** Contains user balance data */ +@property (readonly) KASCTierProgramInclude * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Profile model class containing user data and tier program data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileWithTierProgram.Companion"))) +@interface KASCUserProfileWithTierProgramCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data and tier program data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileWithTierProgramCompanion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data and tier program data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents the user's current tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserTierLevel"))) +@interface KASCUserTierLevel : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCLong * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints __attribute__((swift_name("init(id:name:reachSpend:reachVisits:reachPoints:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserTierLevelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Represents the user's current tier level. + */ +- (KASCUserTierLevel *)doCopyId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCLong * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints __attribute__((swift_name("doCopy(id:name:reachSpend:reachVisits:reachPoints:)"))); + +/** + * Represents the user's current tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents the user's current tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents the user's current tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The ID for this tier. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** The name of this tier level. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount of points acquired that is required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachPoints __attribute__((swift_name("reachPoints"))); + +/** The amount of money spent required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachSpend __attribute__((swift_name("reachSpend"))); + +/** The amount of visits made to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachVisits __attribute__((swift_name("reachVisits"))); +@end + + +/** + * Represents the user's current tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserTierLevel.Companion"))) +@interface KASCUserTierLevelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents the user's current tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserTierLevelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Represents the user's current tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get user profile data for this user for specific business. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessProfileApi"))) +@interface KASCUserBusinessProfileApi : KASCApi + +/** + * Get user profile data for this user for specific business. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get user profile data for this user for specific business. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserBusinessProfileApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get user profile data for this user for specific business. + */ +- (KASCCFlow *> *)getUserBusinessProfileBusinessId:(NSString *)businessId __attribute__((swift_name("getUserBusinessProfile(businessId:)"))); +@property (readonly) KASCCFlow *> *userBusinessProfileState __attribute__((swift_name("userBusinessProfileState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessProfileApi.Companion"))) +@interface KASCUserBusinessProfileApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessProfileApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory"))) +@interface KASCBusinessCategory : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("init(name:icon:code:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessCategoryCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (KASCBusinessCategory *)doCopyName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("doCopy(name:icon:code:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique ategory code for this category */ +@property (readonly) NSString * _Nullable code __attribute__((swift_name("code"))); + +/** Url to this category's icon */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** Name of this category */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory.Companion"))) +@interface KASCBusinessCategoryCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessCategoryCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData"))) +@interface KASCBusinessData : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage * _Nullable)logo logoTransparentBackground:(KASCImage * _Nullable)logoTransparentBackground coverPhoto:(KASCImage * _Nullable)coverPhoto category:(KASCBusinessCategory * _Nullable)category __attribute__((swift_name("init(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessDataCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Business profile data + */ +- (KASCBusinessData *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage * _Nullable)logo logoTransparentBackground:(KASCImage * _Nullable)logoTransparentBackground coverPhoto:(KASCImage * _Nullable)coverPhoto category:(KASCBusinessCategory * _Nullable)category __attribute__((swift_name("doCopy(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))); + +/** + * Business profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** General about text for the business */ +@property (readonly) NSString * _Nullable about __attribute__((swift_name("about"))); +@property (readonly) KASCBusinessCategory * _Nullable category __attribute__((swift_name("category"))); + +/** Whether this is a conglomerate business. Conglomerate businesses are umbrellas for multiple business' in Kangaroo */ +@property (readonly) NSString * _Nullable conglomerate __attribute__((swift_name("conglomerate"))); +@property (readonly) KASCImage * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique business ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage * _Nullable logo __attribute__((swift_name("logo"))); +@property (readonly) KASCImage * _Nullable logoTransparentBackground __attribute__((swift_name("logoTransparentBackground"))); + +/** The manner in which this business rewards its customers. This can be by purchase amount of by visit to the store */ +@property (readonly) NSString * _Nullable loyaltyType __attribute__((swift_name("loyaltyType"))); + +/** The name of this business */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** Whether this is a white label business. White label business' don't appear in the Kangaroo Mobile Customer app, as they usually have their own app. */ +@property (readonly) NSString * _Nullable whiteLabel __attribute__((swift_name("whiteLabel"))); +@end + + +/** + * Business profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData.Companion"))) +@interface KASCBusinessDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessDataCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Business profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image"))) +@interface KASCImage : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImageCompanion *companion __attribute__((swift_name("companion"))); +- (KASCImage *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image.Companion"))) +@interface KASCImageCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImageCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language___"))) +@interface KASCLanguage___ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage___Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage___ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language___.Companion"))) +@interface KASCLanguage___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage___Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A referral program + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram"))) +@interface KASCReferralProgram : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("init(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCReferralProgramCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A referral program + */ +- (KASCReferralProgram *)doCopyId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("doCopy(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))); + +/** + * A referral program + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A referral program + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A referral program + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The minimum purchawe amount required for a succesful referral. */ +@property (readonly) KASCDouble * _Nullable condMinAmount __attribute__((swift_name("condMinAmount"))); + +/** Denotes whether this referral program is currently active. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The number of days the new customer has to sign up in order for a referral to be sucessful. */ +@property (readonly) KASCLong * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); + +/** The unique id of this referral program. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Denotes whether this referral program has enabled share links. Referral share links are links that the customer can send to prospective referrals. A User can sign up to the business through this link in order to complete the referral. */ +@property (readonly) KASCBoolean * _Nullable linkReferralEnabled __attribute__((swift_name("linkReferralEnabled"))); + +/** The number of points the new customer will earn. */ +@property (readonly) KASCLong * _Nullable refereeEarns __attribute__((swift_name("refereeEarns"))); + +/** The number of points the new customer who made the referral will earn. */ +@property (readonly) KASCLong * _Nullable refererEarns __attribute__((swift_name("refererEarns"))); + +/** A link that can be shared to prospective referrals. */ +@property (readonly) NSString * _Nullable referralLink __attribute__((swift_name("referralLink"))); +@property (readonly) NSString * _Nullable ruleName __attribute__((swift_name("ruleName"))); +@end + + +/** + * A referral program + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram.Companion"))) +@interface KASCReferralProgramCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A referral program + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCReferralProgramCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A referral program + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel_"))) +@interface KASCTierLevel_ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevel_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier level. + */ +- (KASCTierLevel_ *)doCopyId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))); + +/** + * Represents a single tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The icon of this tier level. */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** The ID for this tier. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** translation for each tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); + +/** The name of this tier level. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount of points acquired that is required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachPoints __attribute__((swift_name("reachPoints"))); + +/** The amount of money spent required to reach this tier. */ +@property (readonly) KASCFloat * _Nullable reachSpend __attribute__((swift_name("reachSpend"))); + +/** The amount of visits made to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachVisits __attribute__((swift_name("reachVisits"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable tierPerks __attribute__((swift_name("tierPerks"))); +@end + + +/** + * Represents a single tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel_.Companion"))) +@interface KASCTierLevel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevel_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation_"))) +@interface KASCTierLevelTranslation_ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage___ * _Nullable)language __attribute__((swift_name("init(languageId:name:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevelTranslation_Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierLevelTranslation_ *)doCopyLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage___ * _Nullable)language __attribute__((swift_name("doCopy(languageId:name:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The description of this tier level as translated. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage___ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation_.Companion"))) +@interface KASCTierLevelTranslation_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevelTranslation_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier perk for a tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk_"))) +@interface KASCTierPerk_ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerk_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (KASCTierPerk_ *)doCopyId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Whether this tier perk is currently enabled or disabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The ID for this tier perk. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Whether the offer this tier perk is currently attached to is expired or not. */ +@property (readonly) KASCBoolean * _Nullable isExpired __attribute__((swift_name("isExpired"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); +@property (readonly) KASCLong * _Nullable offerId __attribute__((swift_name("offerId"))); +@property (readonly) KASCLong * _Nullable punchItemId __attribute__((swift_name("punchItemId"))); + +/** The ID for the tier level this tier perk is related to. */ +@property (readonly) KASCLong * _Nullable tierId __attribute__((swift_name("tierId"))); + +/** The title of this tier perk. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + + +/** + * Represents a single tier perk for a tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk_.Companion"))) +@interface KASCTierPerk_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier perk for a tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerk_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation_"))) +@interface KASCTierPerkTranslation_ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage___ * _Nullable)language __attribute__((swift_name("init(languageId:title:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerkTranslation_Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierPerkTranslation_ *)doCopyLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage___ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage___ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation_.Companion"))) +@interface KASCTierPerkTranslation_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerkTranslation_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress_"))) +@interface KASCTierProgress_ : KASCBase +- (instancetype)initWithStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("init(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierProgress_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (KASCTierProgress_ *)doCopyStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("doCopy(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The end date for this tier session. The tier will be reset once this date is reached. */ +@property (readonly) NSString * _Nullable endDate __attribute__((swift_name("endDate"))); + +/** The amount of spend left in the user's current tier progress. Once they have acquired this many more amount of spend, they will be moved into the next tier. */ +@property (readonly) KASCFloat * _Nullable leftAmount __attribute__((swift_name("leftAmount"))); + +/** The amount of points left in the user's current tier progress. Once they have acquired this many more amount of points, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftPoints __attribute__((swift_name("leftPoints"))); + +/** The amount of visits left in the user's current tier progress. Once they have acquired this many more amount of visits, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftVisits __attribute__((swift_name("leftVisits"))); + +/** The name of the user's next tier level. */ +@property (readonly) NSString * _Nullable nextTierLevel __attribute__((swift_name("nextTierLevel"))); + +/** The start date for this tier session. */ +@property (readonly) NSString * _Nullable startDate __attribute__((swift_name("startDate"))); + +/** The name of the user's current tier level */ +@property (readonly) NSString * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** The name of the user's current tier level. Tiers are recalculated once per day, as such \"tier_level\" may not be completely up to date. */ +@property (readonly) NSString * _Nullable tierLevelLive __attribute__((swift_name("tierLevelLive"))); + +/** The users current tier progress in their \"tier_level\". This will be a number between 0 and 1. A tier progress of 0.5 means that the user has made 50% progress in their current tier. */ +@property (readonly) KASCFloat * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); + +/** Purchase amount between start_date and end_date. */ +@property (readonly) KASCFloat * _Nullable totalAmount __attribute__((swift_name("totalAmount"))); + +/** Purchase points between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalPoints __attribute__((swift_name("totalPoints"))); + +/** Purchase visits between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalVisits __attribute__((swift_name("totalVisits"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress_.Companion"))) +@interface KASCTierProgress_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierProgress_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile balance data. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance"))) +@interface KASCUserBalance : KASCBase +- (instancetype)initWithPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("init(points:giftcard:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBalanceCompanion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile balance data. + */ +- (KASCUserBalance *)doCopyPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("doCopy(points:giftcard:)"))); + +/** + * User Profile balance data. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile balance data. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile balance data. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount of store credit in the users' e-wallet. */ +@property (readonly) KASCDouble * _Nullable giftcard __attribute__((swift_name("giftcard"))); + +/** The number of points this user currently has. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + + +/** + * User Profile balance data. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance.Companion"))) +@interface KASCUserBalanceCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile balance data. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBalanceCompanion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile balance data. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data for specific business + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessProfileModel"))) +@interface KASCUserBusinessProfileModel : KASCModel +- (instancetype)initWithData:(KASCBusinessData * _Nullable)data included:(KASCUserProfileInclude * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserBusinessProfileModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data for specific business + */ +- (KASCUserBusinessProfileModel *)doCopyData:(KASCBusinessData * _Nullable)data included:(KASCUserProfileInclude * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Profile model class containing user data for specific business + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data for specific business + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data for specific business + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains business data */ +@property (readonly) KASCBusinessData * _Nullable data __attribute__((swift_name("data"))); + +/** Contains user balance data */ +@property (readonly) KASCUserProfileInclude * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Profile model class containing user data for specific business + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessProfileModel.Companion"))) +@interface KASCUserBusinessProfileModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data for specific business + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessProfileModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data for specific business + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Extra user profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude"))) +@interface KASCUserProfileInclude : KASCBase +- (instancetype)initWithBalance:(KASCUserBalance * _Nullable)balance tierLevel:(KASCTierLevel_ * _Nullable)tierLevel tierProgress:(KASCTierProgress_ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("init(balance:tierLevel:tierProgress:referralPrograms:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserProfileIncludeCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Extra user profile data + */ +- (KASCUserProfileInclude *)doCopyBalance:(KASCUserBalance * _Nullable)balance tierLevel:(KASCTierLevel_ * _Nullable)tierLevel tierProgress:(KASCTierProgress_ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("doCopy(balance:tierLevel:tierProgress:referralPrograms:)"))); + +/** + * Extra user profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Extra user profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Extra user profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** User Profile balance data. */ +@property (readonly) KASCUserBalance * _Nullable balance __attribute__((swift_name("balance"))); + +/** A list of referral programs the user has access to. */ +@property (readonly) NSArray * _Nullable referralPrograms __attribute__((swift_name("referralPrograms"))); + +/** User's tier status. */ +@property (readonly) KASCTierLevel_ * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** User's tier progress and status. If a user's tier status is statically fixed, this will be null as they do not progress from tier to tier. */ +@property (readonly) KASCTierProgress_ * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); +@end + + +/** + * Extra user profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude.Companion"))) +@interface KASCUserProfileIncludeCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Extra user profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileIncludeCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Extra user profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Notify Kangaroo that an offer has been shared to facebook [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferFacebookShareApi"))) +@interface KASCOfferFacebookShareApi : KASCApi + +/** + * Notify Kangaroo that an offer has been shared to facebook [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Notify Kangaroo that an offer has been shared to facebook [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCOfferFacebookShareApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Notify Kangaroo that an offer has been shared to facebook + */ +- (KASCCFlow *> *)postOfferFacebookShareOfferId:(NSString *)offerId include:(NSString *)include facebookUserId:(NSString *)facebookUserId type:(NSString *)type friendsCount:(NSString *)friendsCount __attribute__((swift_name("postOfferFacebookShare(offerId:include:facebookUserId:type:friendsCount:)"))); +@property (readonly) KASCCFlow *> *offerFacebookShareState __attribute__((swift_name("offerFacebookShareState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferFacebookShareApi.Companion"))) +@interface KASCOfferFacebookShareApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferFacebookShareApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language____"))) +@interface KASCLanguage____ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage____Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage____ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language____.Companion"))) +@interface KASCLanguage____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A referral program + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram_"))) +@interface KASCReferralProgram_ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("init(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCReferralProgram_Companion *companion __attribute__((swift_name("companion"))); + +/** + * A referral program + */ +- (KASCReferralProgram_ *)doCopyId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("doCopy(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))); + +/** + * A referral program + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A referral program + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A referral program + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The minimum purchawe amount required for a succesful referral. */ +@property (readonly) KASCDouble * _Nullable condMinAmount __attribute__((swift_name("condMinAmount"))); + +/** Denotes whether this referral program is currently active. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The number of days the new customer has to sign up in order for a referral to be sucessful. */ +@property (readonly) KASCLong * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); + +/** The unique id of this referral program. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Denotes whether this referral program has enabled share links. Referral share links are links that the customer can send to prospective referrals. A User can sign up to the business through this link in order to complete the referral. */ +@property (readonly) KASCBoolean * _Nullable linkReferralEnabled __attribute__((swift_name("linkReferralEnabled"))); + +/** The number of points the new customer will earn. */ +@property (readonly) KASCLong * _Nullable refereeEarns __attribute__((swift_name("refereeEarns"))); + +/** The number of points the new customer who made the referral will earn. */ +@property (readonly) KASCLong * _Nullable refererEarns __attribute__((swift_name("refererEarns"))); + +/** A link that can be shared to prospective referrals. */ +@property (readonly) NSString * _Nullable referralLink __attribute__((swift_name("referralLink"))); +@property (readonly) NSString * _Nullable ruleName __attribute__((swift_name("ruleName"))); +@end + + +/** + * A referral program + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram_.Companion"))) +@interface KASCReferralProgram_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A referral program + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCReferralProgram_Companion *shared __attribute__((swift_name("shared"))); + +/** + * A referral program + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel__"))) +@interface KASCTierLevel__ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevel__Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier level. + */ +- (KASCTierLevel__ *)doCopyId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))); + +/** + * Represents a single tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The icon of this tier level. */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** The ID for this tier. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** translation for each tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); + +/** The name of this tier level. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount of points acquired that is required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachPoints __attribute__((swift_name("reachPoints"))); + +/** The amount of money spent required to reach this tier. */ +@property (readonly) KASCFloat * _Nullable reachSpend __attribute__((swift_name("reachSpend"))); + +/** The amount of visits made to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachVisits __attribute__((swift_name("reachVisits"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable tierPerks __attribute__((swift_name("tierPerks"))); +@end + + +/** + * Represents a single tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel__.Companion"))) +@interface KASCTierLevel__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevel__Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation__"))) +@interface KASCTierLevelTranslation__ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage____ * _Nullable)language __attribute__((swift_name("init(languageId:name:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevelTranslation__Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierLevelTranslation__ *)doCopyLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage____ * _Nullable)language __attribute__((swift_name("doCopy(languageId:name:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The description of this tier level as translated. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage____ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation__.Companion"))) +@interface KASCTierLevelTranslation__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevelTranslation__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier perk for a tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk__"))) +@interface KASCTierPerk__ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerk__Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (KASCTierPerk__ *)doCopyId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Whether this tier perk is currently enabled or disabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The ID for this tier perk. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Whether the offer this tier perk is currently attached to is expired or not. */ +@property (readonly) KASCBoolean * _Nullable isExpired __attribute__((swift_name("isExpired"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); +@property (readonly) KASCLong * _Nullable offerId __attribute__((swift_name("offerId"))); +@property (readonly) KASCLong * _Nullable punchItemId __attribute__((swift_name("punchItemId"))); + +/** The ID for the tier level this tier perk is related to. */ +@property (readonly) KASCLong * _Nullable tierId __attribute__((swift_name("tierId"))); + +/** The title of this tier perk. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + + +/** + * Represents a single tier perk for a tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk__.Companion"))) +@interface KASCTierPerk__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier perk for a tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerk__Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation__"))) +@interface KASCTierPerkTranslation__ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage____ * _Nullable)language __attribute__((swift_name("init(languageId:title:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerkTranslation__Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierPerkTranslation__ *)doCopyLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage____ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage____ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation__.Companion"))) +@interface KASCTierPerkTranslation__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerkTranslation__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress__"))) +@interface KASCTierProgress__ : KASCBase +- (instancetype)initWithStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("init(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierProgress__Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (KASCTierProgress__ *)doCopyStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("doCopy(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The end date for this tier session. The tier will be reset once this date is reached. */ +@property (readonly) NSString * _Nullable endDate __attribute__((swift_name("endDate"))); + +/** The amount of spend left in the user's current tier progress. Once they have acquired this many more amount of spend, they will be moved into the next tier. */ +@property (readonly) KASCFloat * _Nullable leftAmount __attribute__((swift_name("leftAmount"))); + +/** The amount of points left in the user's current tier progress. Once they have acquired this many more amount of points, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftPoints __attribute__((swift_name("leftPoints"))); + +/** The amount of visits left in the user's current tier progress. Once they have acquired this many more amount of visits, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftVisits __attribute__((swift_name("leftVisits"))); + +/** The name of the user's next tier level. */ +@property (readonly) NSString * _Nullable nextTierLevel __attribute__((swift_name("nextTierLevel"))); + +/** The start date for this tier session. */ +@property (readonly) NSString * _Nullable startDate __attribute__((swift_name("startDate"))); + +/** The name of the user's current tier level */ +@property (readonly) NSString * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** The name of the user's current tier level. Tiers are recalculated once per day, as such \"tier_level\" may not be completely up to date. */ +@property (readonly) NSString * _Nullable tierLevelLive __attribute__((swift_name("tierLevelLive"))); + +/** The users current tier progress in their \"tier_level\". This will be a number between 0 and 1. A tier progress of 0.5 means that the user has made 50% progress in their current tier. */ +@property (readonly) KASCFloat * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); + +/** Purchase amount between start_date and end_date. */ +@property (readonly) KASCFloat * _Nullable totalAmount __attribute__((swift_name("totalAmount"))); + +/** Purchase points between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalPoints __attribute__((swift_name("totalPoints"))); + +/** Purchase visits between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalVisits __attribute__((swift_name("totalVisits"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress__.Companion"))) +@interface KASCTierProgress__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierProgress__Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile balance data. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance_"))) +@interface KASCUserBalance_ : KASCBase +- (instancetype)initWithPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("init(points:giftcard:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBalance_Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile balance data. + */ +- (KASCUserBalance_ *)doCopyPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("doCopy(points:giftcard:)"))); + +/** + * User Profile balance data. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile balance data. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile balance data. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount of store credit in the users' e-wallet. */ +@property (readonly) KASCDouble * _Nullable giftcard __attribute__((swift_name("giftcard"))); + +/** The number of points this user currently has. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + + +/** + * User Profile balance data. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance_.Companion"))) +@interface KASCUserBalance_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile balance data. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBalance_Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile balance data. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_"))) +@interface KASCUserProfileDataModel_ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel_Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel_ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_.Companion"))) +@interface KASCUserProfileDataModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel_Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Extra user profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude_"))) +@interface KASCUserProfileInclude_ : KASCBase +- (instancetype)initWithBalance:(KASCUserBalance_ * _Nullable)balance tierLevel:(KASCTierLevel__ * _Nullable)tierLevel tierProgress:(KASCTierProgress__ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("init(balance:tierLevel:tierProgress:referralPrograms:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserProfileInclude_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Extra user profile data + */ +- (KASCUserProfileInclude_ *)doCopyBalance:(KASCUserBalance_ * _Nullable)balance tierLevel:(KASCTierLevel__ * _Nullable)tierLevel tierProgress:(KASCTierProgress__ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("doCopy(balance:tierLevel:tierProgress:referralPrograms:)"))); + +/** + * Extra user profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Extra user profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Extra user profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** User Profile balance data. */ +@property (readonly) KASCUserBalance_ * _Nullable balance __attribute__((swift_name("balance"))); + +/** A list of referral programs the user has access to. */ +@property (readonly) NSArray * _Nullable referralPrograms __attribute__((swift_name("referralPrograms"))); + +/** User's tier status. */ +@property (readonly) KASCTierLevel__ * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** User's tier progress and status. If a user's tier status is statically fixed, this will be null as they do not progress from tier to tier. */ +@property (readonly) KASCTierProgress__ * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); +@end + + +/** + * Extra user profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude_.Companion"))) +@interface KASCUserProfileInclude_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Extra user profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileInclude_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Extra user profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel"))) +@interface KASCUserProfileModel : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel_ * _Nullable)data included:(KASCUserProfileInclude_ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileModel *)doCopyData:(KASCUserProfileDataModel_ * _Nullable)data included:(KASCUserProfileInclude_ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user profile data */ +@property (readonly) KASCUserProfileDataModel_ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains user balance data */ +@property (readonly) KASCUserProfileInclude_ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel.Companion"))) +@interface KASCUserProfileModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get user profile data for this user. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileApi"))) +@interface KASCUserProfileApi : KASCApi + +/** + * Get user profile data for this user. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get user profile data for this user. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserProfileApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get user profile data for this user. + */ +- (KASCCFlow *> *)getUserProfile __attribute__((swift_name("getUserProfile()"))); +@property (readonly) KASCCFlow *> *userProfileState __attribute__((swift_name("userProfileState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileApi.Companion"))) +@interface KASCUserProfileApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_____"))) +@interface KASCLanguage_____ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_____Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_____ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_____.Companion"))) +@interface KASCLanguage_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A referral program + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram__"))) +@interface KASCReferralProgram__ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("init(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCReferralProgram__Companion *companion __attribute__((swift_name("companion"))); + +/** + * A referral program + */ +- (KASCReferralProgram__ *)doCopyId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("doCopy(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))); + +/** + * A referral program + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A referral program + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A referral program + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The minimum purchawe amount required for a succesful referral. */ +@property (readonly) KASCDouble * _Nullable condMinAmount __attribute__((swift_name("condMinAmount"))); + +/** Denotes whether this referral program is currently active. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The number of days the new customer has to sign up in order for a referral to be sucessful. */ +@property (readonly) KASCLong * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); + +/** The unique id of this referral program. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Denotes whether this referral program has enabled share links. Referral share links are links that the customer can send to prospective referrals. A User can sign up to the business through this link in order to complete the referral. */ +@property (readonly) KASCBoolean * _Nullable linkReferralEnabled __attribute__((swift_name("linkReferralEnabled"))); + +/** The number of points the new customer will earn. */ +@property (readonly) KASCLong * _Nullable refereeEarns __attribute__((swift_name("refereeEarns"))); + +/** The number of points the new customer who made the referral will earn. */ +@property (readonly) KASCLong * _Nullable refererEarns __attribute__((swift_name("refererEarns"))); + +/** A link that can be shared to prospective referrals. */ +@property (readonly) NSString * _Nullable referralLink __attribute__((swift_name("referralLink"))); +@property (readonly) NSString * _Nullable ruleName __attribute__((swift_name("ruleName"))); +@end + + +/** + * A referral program + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram__.Companion"))) +@interface KASCReferralProgram__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A referral program + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCReferralProgram__Companion *shared __attribute__((swift_name("shared"))); + +/** + * A referral program + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel___"))) +@interface KASCTierLevel___ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevel___Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier level. + */ +- (KASCTierLevel___ *)doCopyId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))); + +/** + * Represents a single tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The icon of this tier level. */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** The ID for this tier. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** translation for each tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); + +/** The name of this tier level. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount of points acquired that is required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachPoints __attribute__((swift_name("reachPoints"))); + +/** The amount of money spent required to reach this tier. */ +@property (readonly) KASCFloat * _Nullable reachSpend __attribute__((swift_name("reachSpend"))); + +/** The amount of visits made to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachVisits __attribute__((swift_name("reachVisits"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable tierPerks __attribute__((swift_name("tierPerks"))); +@end + + +/** + * Represents a single tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel___.Companion"))) +@interface KASCTierLevel___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevel___Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation___"))) +@interface KASCTierLevelTranslation___ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage_____ * _Nullable)language __attribute__((swift_name("init(languageId:name:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevelTranslation___Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierLevelTranslation___ *)doCopyLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage_____ * _Nullable)language __attribute__((swift_name("doCopy(languageId:name:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The description of this tier level as translated. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_____ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation___.Companion"))) +@interface KASCTierLevelTranslation___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevelTranslation___Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier perk for a tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk___"))) +@interface KASCTierPerk___ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerk___Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (KASCTierPerk___ *)doCopyId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Whether this tier perk is currently enabled or disabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The ID for this tier perk. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Whether the offer this tier perk is currently attached to is expired or not. */ +@property (readonly) KASCBoolean * _Nullable isExpired __attribute__((swift_name("isExpired"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); +@property (readonly) KASCLong * _Nullable offerId __attribute__((swift_name("offerId"))); +@property (readonly) KASCLong * _Nullable punchItemId __attribute__((swift_name("punchItemId"))); + +/** The ID for the tier level this tier perk is related to. */ +@property (readonly) KASCLong * _Nullable tierId __attribute__((swift_name("tierId"))); + +/** The title of this tier perk. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + + +/** + * Represents a single tier perk for a tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk___.Companion"))) +@interface KASCTierPerk___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier perk for a tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerk___Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation___"))) +@interface KASCTierPerkTranslation___ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage_____ * _Nullable)language __attribute__((swift_name("init(languageId:title:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerkTranslation___Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierPerkTranslation___ *)doCopyLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage_____ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_____ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation___.Companion"))) +@interface KASCTierPerkTranslation___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerkTranslation___Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress___"))) +@interface KASCTierProgress___ : KASCBase +- (instancetype)initWithStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("init(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierProgress___Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (KASCTierProgress___ *)doCopyStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("doCopy(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The end date for this tier session. The tier will be reset once this date is reached. */ +@property (readonly) NSString * _Nullable endDate __attribute__((swift_name("endDate"))); + +/** The amount of spend left in the user's current tier progress. Once they have acquired this many more amount of spend, they will be moved into the next tier. */ +@property (readonly) KASCFloat * _Nullable leftAmount __attribute__((swift_name("leftAmount"))); + +/** The amount of points left in the user's current tier progress. Once they have acquired this many more amount of points, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftPoints __attribute__((swift_name("leftPoints"))); + +/** The amount of visits left in the user's current tier progress. Once they have acquired this many more amount of visits, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftVisits __attribute__((swift_name("leftVisits"))); + +/** The name of the user's next tier level. */ +@property (readonly) NSString * _Nullable nextTierLevel __attribute__((swift_name("nextTierLevel"))); + +/** The start date for this tier session. */ +@property (readonly) NSString * _Nullable startDate __attribute__((swift_name("startDate"))); + +/** The name of the user's current tier level */ +@property (readonly) NSString * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** The name of the user's current tier level. Tiers are recalculated once per day, as such \"tier_level\" may not be completely up to date. */ +@property (readonly) NSString * _Nullable tierLevelLive __attribute__((swift_name("tierLevelLive"))); + +/** The users current tier progress in their \"tier_level\". This will be a number between 0 and 1. A tier progress of 0.5 means that the user has made 50% progress in their current tier. */ +@property (readonly) KASCFloat * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); + +/** Purchase amount between start_date and end_date. */ +@property (readonly) KASCFloat * _Nullable totalAmount __attribute__((swift_name("totalAmount"))); + +/** Purchase points between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalPoints __attribute__((swift_name("totalPoints"))); + +/** Purchase visits between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalVisits __attribute__((swift_name("totalVisits"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress___.Companion"))) +@interface KASCTierProgress___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierProgress___Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile balance data. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance__"))) +@interface KASCUserBalance__ : KASCBase +- (instancetype)initWithPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("init(points:giftcard:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBalance__Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile balance data. + */ +- (KASCUserBalance__ *)doCopyPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("doCopy(points:giftcard:)"))); + +/** + * User Profile balance data. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile balance data. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile balance data. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount of store credit in the users' e-wallet. */ +@property (readonly) KASCDouble * _Nullable giftcard __attribute__((swift_name("giftcard"))); + +/** The number of points this user currently has. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + + +/** + * User Profile balance data. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance__.Companion"))) +@interface KASCUserBalance__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile balance data. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBalance__Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile balance data. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel__"))) +@interface KASCUserProfileDataModel__ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel__Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel__ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel__.Companion"))) +@interface KASCUserProfileDataModel__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel__Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Extra user profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude__"))) +@interface KASCUserProfileInclude__ : KASCBase +- (instancetype)initWithBalance:(KASCUserBalance__ * _Nullable)balance tierLevel:(KASCTierLevel___ * _Nullable)tierLevel tierProgress:(KASCTierProgress___ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("init(balance:tierLevel:tierProgress:referralPrograms:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserProfileInclude__Companion *companion __attribute__((swift_name("companion"))); + +/** + * Extra user profile data + */ +- (KASCUserProfileInclude__ *)doCopyBalance:(KASCUserBalance__ * _Nullable)balance tierLevel:(KASCTierLevel___ * _Nullable)tierLevel tierProgress:(KASCTierProgress___ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("doCopy(balance:tierLevel:tierProgress:referralPrograms:)"))); + +/** + * Extra user profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Extra user profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Extra user profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** User Profile balance data. */ +@property (readonly) KASCUserBalance__ * _Nullable balance __attribute__((swift_name("balance"))); + +/** A list of referral programs the user has access to. */ +@property (readonly) NSArray * _Nullable referralPrograms __attribute__((swift_name("referralPrograms"))); + +/** User's tier status. */ +@property (readonly) KASCTierLevel___ * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** User's tier progress and status. If a user's tier status is statically fixed, this will be null as they do not progress from tier to tier. */ +@property (readonly) KASCTierProgress___ * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); +@end + + +/** + * Extra user profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude__.Companion"))) +@interface KASCUserProfileInclude__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Extra user profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileInclude__Companion *shared __attribute__((swift_name("shared"))); + +/** + * Extra user profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel_"))) +@interface KASCUserProfileModel_ : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel__ * _Nullable)data included:(KASCUserProfileInclude__ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileModel_Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileModel_ *)doCopyData:(KASCUserProfileDataModel__ * _Nullable)data included:(KASCUserProfileInclude__ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user profile data */ +@property (readonly) KASCUserProfileDataModel__ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains user balance data */ +@property (readonly) KASCUserProfileInclude__ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel_.Companion"))) +@interface KASCUserProfileModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileModel_Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Check in with a business. The user may be rewarded for this action according to rules set in the business portal on Kangaroo. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserCheckInApi"))) +@interface KASCUserCheckInApi : KASCApi + +/** + * Check in with a business. The user may be rewarded for this action according to rules set in the business portal on Kangaroo. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Check in with a business. The user may be rewarded for this action according to rules set in the business portal on Kangaroo. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserCheckInApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Check in with a business. The user may be rewarded for this action according to rules set in the business portal on Kangaroo. + */ +- (KASCCFlow *> *)userCheckInCheckInRequest:(KASCCheckInRequest *)checkInRequest __attribute__((swift_name("userCheckIn(checkInRequest:)"))); + +/** + * Check in with a business. The user may be rewarded for this action according to rules set in the business portal on Kangaroo. + * + * This method is used by the Native artifact when dealing with object body params + */ +- (KASCCFlow *> *)userCheckInMethods:(NSDictionary *)methods __attribute__((swift_name("userCheckIn(methods:)"))); +@property (readonly) KASCCFlow *> *userCheckInState __attribute__((swift_name("userCheckInState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserCheckInApi.Companion"))) +@interface KASCUserCheckInApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserCheckInApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CheckInDataModel"))) +@interface KASCCheckInDataModel : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id amount:(KASCDouble * _Nullable)amount points:(KASCInt * _Nullable)points name:(NSString * _Nullable)name createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt __attribute__((swift_name("init(id:amount:points:name:createdAt:updatedAt:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCCheckInDataModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCCheckInDataModel *)doCopyId:(KASCInt * _Nullable)id amount:(KASCDouble * _Nullable)amount points:(KASCInt * _Nullable)points name:(NSString * _Nullable)name createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt __attribute__((swift_name("doCopy(id:amount:points:name:createdAt:updatedAt:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@property (readonly) KASCInt * _Nullable points __attribute__((swift_name("points"))); +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CheckInDataModel.Companion"))) +@interface KASCCheckInDataModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCheckInDataModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CheckInRequest"))) +@interface KASCCheckInRequest : KASCBase +- (instancetype)initWithBranchId:(NSString *)branchId intent:(NSString *)intent __attribute__((swift_name("init(branchId:intent:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCCheckInRequestCompanion *companion __attribute__((swift_name("companion"))); +- (KASCCheckInRequest *)doCopyBranchId:(NSString *)branchId intent:(NSString *)intent __attribute__((swift_name("doCopy(branchId:intent:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *branchId __attribute__((swift_name("branchId"))); +@property (readonly) NSString *intent __attribute__((swift_name("intent"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CheckInRequest.Companion"))) +@interface KASCCheckInRequestCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCheckInRequestCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CheckInResponseModel"))) +@interface KASCCheckInResponseModel : KASCModel +- (instancetype)initWithData:(KASCCheckInDataModel * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCCheckInResponseModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCCheckInResponseModel *)doCopyData:(KASCCheckInDataModel * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user profile data */ +@property (readonly) KASCCheckInDataModel * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CheckInResponseModel.Companion"))) +@interface KASCCheckInResponseModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCheckInResponseModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get user A la carte list [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteProductsApi"))) +@interface KASCAlaCarteProductsApi : KASCApi + +/** + * Get user A la carte list [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get user A la carte list [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCAlaCarteProductsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get user A la carte list + */ +- (KASCCFlow *> *)getAlaCarteProducts __attribute__((swift_name("getAlaCarteProducts()"))); +@property (readonly) KASCCFlow *> *alaCarteProductsState __attribute__((swift_name("alaCarteProductsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteProductsApi.Companion"))) +@interface KASCAlaCarteProductsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCAlaCarteProductsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteItemModel"))) +@interface KASCAlaCarteItemModel : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id points:(KASCInt * _Nullable)points product:(KASCProduct * _Nullable)product __attribute__((swift_name("init(id:points:product:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCAlaCarteItemModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCAlaCarteItemModel *)doCopyId:(KASCInt * _Nullable)id points:(KASCInt * _Nullable)points product:(KASCProduct * _Nullable)product __attribute__((swift_name("doCopy(id:points:product:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCInt * _Nullable points __attribute__((swift_name("points"))); +@property (readonly) KASCProduct * _Nullable product __attribute__((swift_name("product"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteItemModel.Companion"))) +@interface KASCAlaCarteItemModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCAlaCarteItemModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User A la carte products model class containing user A la carte list + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteProductsModel"))) +@interface KASCAlaCarteProductsModel : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel___ * _Nullable)data included:(KASCUserAlaCarteIncluded * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCAlaCarteProductsModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * User A la carte products model class containing user A la carte list + */ +- (KASCAlaCarteProductsModel *)doCopyData:(KASCUserProfileDataModel___ * _Nullable)data included:(KASCUserAlaCarteIncluded * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User A la carte products model class containing user A la carte list + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User A la carte products model class containing user A la carte list + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User A la carte products model class containing user A la carte list + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user data */ +@property (readonly) KASCUserProfileDataModel___ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains all A la carte items */ +@property (readonly) KASCUserAlaCarteIncluded * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User A la carte products model class containing user A la carte list + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteProductsModel.Companion"))) +@interface KASCAlaCarteProductsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User A la carte products model class containing user A la carte list + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCAlaCarteProductsModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * User A la carte products model class containing user A la carte list + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images"))) +@interface KASCImages : KASCBase +- (instancetype)initWithPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(path:large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImagesCompanion *companion __attribute__((swift_name("companion"))); +- (KASCImages *)doCopyPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(path:large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable path __attribute__((swift_name("path"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images.Companion"))) +@interface KASCImagesCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImagesCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language______"))) +@interface KASCLanguage______ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage______Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage______ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language______.Companion"))) +@interface KASCLanguage______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages"))) +@interface KASCLanguages : KASCBase +- (instancetype)initWithLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage______ * _Nullable)language __attribute__((swift_name("init(languageId:title:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguagesCompanion *companion __attribute__((swift_name("companion"))); +- (KASCLanguages *)doCopyLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage______ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCLanguage______ * _Nullable language __attribute__((swift_name("language"))); +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages.Companion"))) +@interface KASCLanguagesCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguagesCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product"))) +@interface KASCProduct : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("init(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCProductCompanion *companion __attribute__((swift_name("companion"))); +- (KASCProduct *)doCopyId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("doCopy(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCFloat * _Nullable actualPrice __attribute__((swift_name("actualPrice"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) NSArray * _Nullable productLanguages __attribute__((swift_name("productLanguages"))); +@property (readonly) NSString * _Nullable productSku __attribute__((swift_name("productSku"))); +@property (readonly) KASCFloat * _Nullable realPrice __attribute__((swift_name("realPrice"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product.Companion"))) +@interface KASCProductCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCProductCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserAlaCarteIncluded"))) +@interface KASCUserAlaCarteIncluded : KASCBase +- (instancetype)initWithProductRewards:(NSArray * _Nullable)productRewards __attribute__((swift_name("init(productRewards:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserAlaCarteIncludedCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserAlaCarteIncluded *)doCopyProductRewards:(NSArray * _Nullable)productRewards __attribute__((swift_name("doCopy(productRewards:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable productRewards __attribute__((swift_name("productRewards"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserAlaCarteIncluded.Companion"))) +@interface KASCUserAlaCarteIncludedCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserAlaCarteIncludedCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel___"))) +@interface KASCUserProfileDataModel___ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel___Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel___ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel___.Companion"))) +@interface KASCUserProfileDataModel___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel___Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of rewards available to this user by specific business. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessRewardsApi"))) +@interface KASCUserBusinessRewardsApi : KASCApi + +/** + * Get a list of rewards available to this user by specific business. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of rewards available to this user by specific business. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserBusinessRewardsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of rewards available to this user by specific business. + */ +- (KASCCFlow *> *)getUserBusinessRewardsBusinessId:(NSString *)businessId __attribute__((swift_name("getUserBusinessRewards(businessId:)"))); +@property (readonly) KASCCFlow *> *userBusinessRewardsState __attribute__((swift_name("userBusinessRewardsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessRewardsApi.Companion"))) +@interface KASCUserBusinessRewardsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessRewardsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory_"))) +@interface KASCBusinessCategory_ : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("init(name:icon:code:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessCategory_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (KASCBusinessCategory_ *)doCopyName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("doCopy(name:icon:code:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique ategory code for this category */ +@property (readonly) NSString * _Nullable code __attribute__((swift_name("code"))); + +/** Url to this category's icon */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** Name of this category */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory_.Companion"))) +@interface KASCBusinessCategory_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessCategory_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData_"))) +@interface KASCBusinessData_ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage_ * _Nullable)logo logoTransparentBackground:(KASCImage_ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage_ * _Nullable)coverPhoto category:(KASCBusinessCategory_ * _Nullable)category __attribute__((swift_name("init(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessData_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Business profile data + */ +- (KASCBusinessData_ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage_ * _Nullable)logo logoTransparentBackground:(KASCImage_ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage_ * _Nullable)coverPhoto category:(KASCBusinessCategory_ * _Nullable)category __attribute__((swift_name("doCopy(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))); + +/** + * Business profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** General about text for the business */ +@property (readonly) NSString * _Nullable about __attribute__((swift_name("about"))); +@property (readonly) KASCBusinessCategory_ * _Nullable category __attribute__((swift_name("category"))); + +/** Whether this is a conglomerate business. Conglomerate businesses are umbrellas for multiple business' in Kangaroo */ +@property (readonly) NSString * _Nullable conglomerate __attribute__((swift_name("conglomerate"))); +@property (readonly) KASCImage_ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique business ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage_ * _Nullable logo __attribute__((swift_name("logo"))); +@property (readonly) KASCImage_ * _Nullable logoTransparentBackground __attribute__((swift_name("logoTransparentBackground"))); + +/** The manner in which this business rewards its customers. This can be by purchase amount of by visit to the store */ +@property (readonly) NSString * _Nullable loyaltyType __attribute__((swift_name("loyaltyType"))); + +/** The name of this business */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** Whether this is a white label business. White label business' don't appear in the Kangaroo Mobile Customer app, as they usually have their own app. */ +@property (readonly) NSString * _Nullable whiteLabel __attribute__((swift_name("whiteLabel"))); +@end + + +/** + * Business profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData_.Companion"))) +@interface KASCBusinessData_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessData_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Business profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_"))) +@interface KASCImage_ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage_Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage_ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_.Companion"))) +@interface KASCImage_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_______"))) +@interface KASCLanguage_______ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_______Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_______ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_______.Companion"))) +@interface KASCLanguage_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardModel"))) +@interface KASCRewardModel : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished amount:(KASCFloat * _Nullable)amount realValue:(KASCFloat * _Nullable)realValue discountValue:(KASCFloat * _Nullable)discountValue partnerReward:(KASCBoolean * _Nullable)partnerReward redeemForGiftCard:(KASCBoolean * _Nullable)redeemForGiftCard type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link rewardLanguages:(NSArray * _Nullable)rewardLanguages __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:amount:realValue:discountValue:partnerReward:redeemForGiftCard:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:rewardLanguages:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCRewardModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCRewardModel *)doCopyId:(KASCInt * _Nullable)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished amount:(KASCFloat * _Nullable)amount realValue:(KASCFloat * _Nullable)realValue discountValue:(KASCFloat * _Nullable)discountValue partnerReward:(KASCBoolean * _Nullable)partnerReward redeemForGiftCard:(KASCBoolean * _Nullable)redeemForGiftCard type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link rewardLanguages:(NSArray * _Nullable)rewardLanguages __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:amount:realValue:discountValue:partnerReward:redeemForGiftCard:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:rewardLanguages:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCFloat * _Nullable amount __attribute__((swift_name("amount"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCFloat * _Nullable discountValue __attribute__((swift_name("discountValue"))); +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); + +/** A unique ID identifying this reward */ +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCBoolean * _Nullable partnerReward __attribute__((swift_name("partnerReward"))); +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); +@property (readonly) KASCFloat * _Nullable realValue __attribute__((swift_name("realValue"))); +@property (readonly) KASCBoolean * _Nullable redeemForGiftCard __attribute__((swift_name("redeemForGiftCard"))); +@property (readonly) NSArray * _Nullable rewardLanguages __attribute__((swift_name("rewardLanguages"))); +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardModel.Companion"))) +@interface KASCRewardModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRewardModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardTranslation_"))) +@interface KASCRewardTranslation_ : KASCBase +- (instancetype)initWithId:(KASCInt * _Nullable)id languageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link language:(KASCLanguage_______ * _Nullable)language __attribute__((swift_name("init(id:languageId:title:description:termsConditions:link:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCRewardTranslation_Companion *companion __attribute__((swift_name("companion"))); +- (KASCRewardTranslation_ *)doCopyId:(KASCInt * _Nullable)id languageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link language:(KASCLanguage_______ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:title:description:termsConditions:link:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCLanguage_______ * _Nullable language __attribute__((swift_name("language"))); +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardTranslation_.Companion"))) +@interface KASCRewardTranslation_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRewardTranslation_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessRewardsModel"))) +@interface KASCUserBusinessRewardsModel : KASCModel +- (instancetype)initWithData:(KASCBusinessData_ * _Nullable)data included:(KASCUserRewardsData * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserBusinessRewardsModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserBusinessRewardsModel *)doCopyData:(KASCBusinessData_ * _Nullable)data included:(KASCUserRewardsData * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains business data */ +@property (readonly) KASCBusinessData_ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains all rewards items */ +@property (readonly) KASCUserRewardsData * _Nullable included __attribute__((swift_name("included"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessRewardsModel.Companion"))) +@interface KASCUserBusinessRewardsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessRewardsModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserRewardsData"))) +@interface KASCUserRewardsData : KASCBase +- (instancetype)initWithCatalogItems:(NSArray * _Nullable)catalogItems __attribute__((swift_name("init(catalogItems:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserRewardsDataCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserRewardsData *)doCopyCatalogItems:(NSArray * _Nullable)catalogItems __attribute__((swift_name("doCopy(catalogItems:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains a list of all rewards available to this user */ +@property (readonly) NSArray * _Nullable catalogItems __attribute__((swift_name("catalogItems"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserRewardsData.Companion"))) +@interface KASCUserRewardsDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserRewardsDataCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get user A la carte list by specific business [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessAlaCarteProductsApi"))) +@interface KASCUserBusinessAlaCarteProductsApi : KASCApi + +/** + * Get user A la carte list by specific business [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get user A la carte list by specific business [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserBusinessAlaCarteProductsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get user A la carte list by specific business + */ +- (KASCCFlow *> *)getUserBusinessAlaCarteProductsBusinessId:(NSString *)businessId __attribute__((swift_name("getUserBusinessAlaCarteProducts(businessId:)"))); +@property (readonly) KASCCFlow *> *userBusinessAlaCarteProductsState __attribute__((swift_name("userBusinessAlaCarteProductsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessAlaCarteProductsApi.Companion"))) +@interface KASCUserBusinessAlaCarteProductsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessAlaCarteProductsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteItemModel_"))) +@interface KASCAlaCarteItemModel_ : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id points:(KASCInt * _Nullable)points product:(KASCProduct_ * _Nullable)product __attribute__((swift_name("init(id:points:product:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCAlaCarteItemModel_Companion *companion __attribute__((swift_name("companion"))); +- (KASCAlaCarteItemModel_ *)doCopyId:(KASCInt * _Nullable)id points:(KASCInt * _Nullable)points product:(KASCProduct_ * _Nullable)product __attribute__((swift_name("doCopy(id:points:product:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCInt * _Nullable points __attribute__((swift_name("points"))); +@property (readonly) KASCProduct_ * _Nullable product __attribute__((swift_name("product"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteItemModel_.Companion"))) +@interface KASCAlaCarteItemModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCAlaCarteItemModel_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User A la carte products model class containing user A la carte list + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteProductsModel_"))) +@interface KASCAlaCarteProductsModel_ : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel____ * _Nullable)data included:(KASCUserAlaCarteIncluded_ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCAlaCarteProductsModel_Companion *companion __attribute__((swift_name("companion"))); + +/** + * User A la carte products model class containing user A la carte list + */ +- (KASCAlaCarteProductsModel_ *)doCopyData:(KASCUserProfileDataModel____ * _Nullable)data included:(KASCUserAlaCarteIncluded_ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User A la carte products model class containing user A la carte list + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User A la carte products model class containing user A la carte list + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User A la carte products model class containing user A la carte list + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user data */ +@property (readonly) KASCUserProfileDataModel____ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains all A la carte items */ +@property (readonly) KASCUserAlaCarteIncluded_ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User A la carte products model class containing user A la carte list + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteProductsModel_.Companion"))) +@interface KASCAlaCarteProductsModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User A la carte products model class containing user A la carte list + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCAlaCarteProductsModel_Companion *shared __attribute__((swift_name("shared"))); + +/** + * User A la carte products model class containing user A la carte list + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images_"))) +@interface KASCImages_ : KASCBase +- (instancetype)initWithPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(path:large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImages_Companion *companion __attribute__((swift_name("companion"))); +- (KASCImages_ *)doCopyPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(path:large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable path __attribute__((swift_name("path"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images_.Companion"))) +@interface KASCImages_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImages_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language________"))) +@interface KASCLanguage________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language________.Companion"))) +@interface KASCLanguage________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages_"))) +@interface KASCLanguages_ : KASCBase +- (instancetype)initWithLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage________ * _Nullable)language __attribute__((swift_name("init(languageId:title:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguages_Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguages_ *)doCopyLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCLanguage________ * _Nullable language __attribute__((swift_name("language"))); +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages_.Companion"))) +@interface KASCLanguages_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguages_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product_"))) +@interface KASCProduct_ : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("init(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCProduct_Companion *companion __attribute__((swift_name("companion"))); +- (KASCProduct_ *)doCopyId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("doCopy(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCFloat * _Nullable actualPrice __attribute__((swift_name("actualPrice"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) NSArray * _Nullable productLanguages __attribute__((swift_name("productLanguages"))); +@property (readonly) NSString * _Nullable productSku __attribute__((swift_name("productSku"))); +@property (readonly) KASCFloat * _Nullable realPrice __attribute__((swift_name("realPrice"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product_.Companion"))) +@interface KASCProduct_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCProduct_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserAlaCarteIncluded_"))) +@interface KASCUserAlaCarteIncluded_ : KASCBase +- (instancetype)initWithProductRewards:(NSArray * _Nullable)productRewards __attribute__((swift_name("init(productRewards:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserAlaCarteIncluded_Companion *companion __attribute__((swift_name("companion"))); +- (KASCUserAlaCarteIncluded_ *)doCopyProductRewards:(NSArray * _Nullable)productRewards __attribute__((swift_name("doCopy(productRewards:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable productRewards __attribute__((swift_name("productRewards"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserAlaCarteIncluded_.Companion"))) +@interface KASCUserAlaCarteIncluded_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserAlaCarteIncluded_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel____"))) +@interface KASCUserProfileDataModel____ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel____Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel____ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel____.Companion"))) +@interface KASCUserProfileDataModel____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel____Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Update a users' profile [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileUpdateApi"))) +@interface KASCUserProfileUpdateApi : KASCApi + +/** + * Update a users' profile [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Update a users' profile [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserProfileUpdateApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Update a users' profile + */ +- (KASCCFlow *> *)updateUserProfileFirstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language gender:(NSString * _Nullable)gender profilePhoto:(NSString * _Nullable)profilePhoto __attribute__((swift_name("updateUserProfile(firstName:lastName:birthDate:language:gender:profilePhoto:)"))); +@property (readonly) KASCCFlow *> *userProfileUpdateState __attribute__((swift_name("userProfileUpdateState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileUpdateApi.Companion"))) +@interface KASCUserProfileUpdateApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileUpdateApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_________"))) +@interface KASCLanguage_________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_________.Companion"))) +@interface KASCLanguage_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A referral program + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram___"))) +@interface KASCReferralProgram___ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("init(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCReferralProgram___Companion *companion __attribute__((swift_name("companion"))); + +/** + * A referral program + */ +- (KASCReferralProgram___ *)doCopyId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("doCopy(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))); + +/** + * A referral program + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A referral program + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A referral program + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The minimum purchawe amount required for a succesful referral. */ +@property (readonly) KASCDouble * _Nullable condMinAmount __attribute__((swift_name("condMinAmount"))); + +/** Denotes whether this referral program is currently active. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The number of days the new customer has to sign up in order for a referral to be sucessful. */ +@property (readonly) KASCLong * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); + +/** The unique id of this referral program. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Denotes whether this referral program has enabled share links. Referral share links are links that the customer can send to prospective referrals. A User can sign up to the business through this link in order to complete the referral. */ +@property (readonly) KASCBoolean * _Nullable linkReferralEnabled __attribute__((swift_name("linkReferralEnabled"))); + +/** The number of points the new customer will earn. */ +@property (readonly) KASCLong * _Nullable refereeEarns __attribute__((swift_name("refereeEarns"))); + +/** The number of points the new customer who made the referral will earn. */ +@property (readonly) KASCLong * _Nullable refererEarns __attribute__((swift_name("refererEarns"))); + +/** A link that can be shared to prospective referrals. */ +@property (readonly) NSString * _Nullable referralLink __attribute__((swift_name("referralLink"))); +@property (readonly) NSString * _Nullable ruleName __attribute__((swift_name("ruleName"))); +@end + + +/** + * A referral program + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram___.Companion"))) +@interface KASCReferralProgram___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A referral program + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCReferralProgram___Companion *shared __attribute__((swift_name("shared"))); + +/** + * A referral program + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel____"))) +@interface KASCTierLevel____ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevel____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier level. + */ +- (KASCTierLevel____ *)doCopyId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))); + +/** + * Represents a single tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The icon of this tier level. */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** The ID for this tier. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** translation for each tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); + +/** The name of this tier level. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount of points acquired that is required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachPoints __attribute__((swift_name("reachPoints"))); + +/** The amount of money spent required to reach this tier. */ +@property (readonly) KASCFloat * _Nullable reachSpend __attribute__((swift_name("reachSpend"))); + +/** The amount of visits made to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachVisits __attribute__((swift_name("reachVisits"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable tierPerks __attribute__((swift_name("tierPerks"))); +@end + + +/** + * Represents a single tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel____.Companion"))) +@interface KASCTierLevel____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevel____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation____"))) +@interface KASCTierLevelTranslation____ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage_________ * _Nullable)language __attribute__((swift_name("init(languageId:name:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevelTranslation____Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierLevelTranslation____ *)doCopyLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage_________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:name:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The description of this tier level as translated. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation____.Companion"))) +@interface KASCTierLevelTranslation____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevelTranslation____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier perk for a tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk____"))) +@interface KASCTierPerk____ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerk____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (KASCTierPerk____ *)doCopyId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Whether this tier perk is currently enabled or disabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The ID for this tier perk. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Whether the offer this tier perk is currently attached to is expired or not. */ +@property (readonly) KASCBoolean * _Nullable isExpired __attribute__((swift_name("isExpired"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); +@property (readonly) KASCLong * _Nullable offerId __attribute__((swift_name("offerId"))); +@property (readonly) KASCLong * _Nullable punchItemId __attribute__((swift_name("punchItemId"))); + +/** The ID for the tier level this tier perk is related to. */ +@property (readonly) KASCLong * _Nullable tierId __attribute__((swift_name("tierId"))); + +/** The title of this tier perk. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + + +/** + * Represents a single tier perk for a tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk____.Companion"))) +@interface KASCTierPerk____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier perk for a tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerk____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation____"))) +@interface KASCTierPerkTranslation____ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage_________ * _Nullable)language __attribute__((swift_name("init(languageId:title:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerkTranslation____Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierPerkTranslation____ *)doCopyLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage_________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation____.Companion"))) +@interface KASCTierPerkTranslation____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerkTranslation____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress____"))) +@interface KASCTierProgress____ : KASCBase +- (instancetype)initWithStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("init(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierProgress____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (KASCTierProgress____ *)doCopyStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("doCopy(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The end date for this tier session. The tier will be reset once this date is reached. */ +@property (readonly) NSString * _Nullable endDate __attribute__((swift_name("endDate"))); + +/** The amount of spend left in the user's current tier progress. Once they have acquired this many more amount of spend, they will be moved into the next tier. */ +@property (readonly) KASCFloat * _Nullable leftAmount __attribute__((swift_name("leftAmount"))); + +/** The amount of points left in the user's current tier progress. Once they have acquired this many more amount of points, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftPoints __attribute__((swift_name("leftPoints"))); + +/** The amount of visits left in the user's current tier progress. Once they have acquired this many more amount of visits, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftVisits __attribute__((swift_name("leftVisits"))); + +/** The name of the user's next tier level. */ +@property (readonly) NSString * _Nullable nextTierLevel __attribute__((swift_name("nextTierLevel"))); + +/** The start date for this tier session. */ +@property (readonly) NSString * _Nullable startDate __attribute__((swift_name("startDate"))); + +/** The name of the user's current tier level */ +@property (readonly) NSString * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** The name of the user's current tier level. Tiers are recalculated once per day, as such \"tier_level\" may not be completely up to date. */ +@property (readonly) NSString * _Nullable tierLevelLive __attribute__((swift_name("tierLevelLive"))); + +/** The users current tier progress in their \"tier_level\". This will be a number between 0 and 1. A tier progress of 0.5 means that the user has made 50% progress in their current tier. */ +@property (readonly) KASCFloat * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); + +/** Purchase amount between start_date and end_date. */ +@property (readonly) KASCFloat * _Nullable totalAmount __attribute__((swift_name("totalAmount"))); + +/** Purchase points between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalPoints __attribute__((swift_name("totalPoints"))); + +/** Purchase visits between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalVisits __attribute__((swift_name("totalVisits"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress____.Companion"))) +@interface KASCTierProgress____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierProgress____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile balance data. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance___"))) +@interface KASCUserBalance___ : KASCBase +- (instancetype)initWithPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("init(points:giftcard:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBalance___Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile balance data. + */ +- (KASCUserBalance___ *)doCopyPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("doCopy(points:giftcard:)"))); + +/** + * User Profile balance data. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile balance data. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile balance data. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount of store credit in the users' e-wallet. */ +@property (readonly) KASCDouble * _Nullable giftcard __attribute__((swift_name("giftcard"))); + +/** The number of points this user currently has. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + + +/** + * User Profile balance data. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance___.Companion"))) +@interface KASCUserBalance___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile balance data. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBalance___Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile balance data. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_____"))) +@interface KASCUserProfileDataModel_____ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel_____Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel_____ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_____.Companion"))) +@interface KASCUserProfileDataModel_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel_____Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Extra user profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude___"))) +@interface KASCUserProfileInclude___ : KASCBase +- (instancetype)initWithBalance:(KASCUserBalance___ * _Nullable)balance tierLevel:(KASCTierLevel____ * _Nullable)tierLevel tierProgress:(KASCTierProgress____ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("init(balance:tierLevel:tierProgress:referralPrograms:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserProfileInclude___Companion *companion __attribute__((swift_name("companion"))); + +/** + * Extra user profile data + */ +- (KASCUserProfileInclude___ *)doCopyBalance:(KASCUserBalance___ * _Nullable)balance tierLevel:(KASCTierLevel____ * _Nullable)tierLevel tierProgress:(KASCTierProgress____ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("doCopy(balance:tierLevel:tierProgress:referralPrograms:)"))); + +/** + * Extra user profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Extra user profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Extra user profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** User Profile balance data. */ +@property (readonly) KASCUserBalance___ * _Nullable balance __attribute__((swift_name("balance"))); + +/** A list of referral programs the user has access to. */ +@property (readonly) NSArray * _Nullable referralPrograms __attribute__((swift_name("referralPrograms"))); + +/** User's tier status. */ +@property (readonly) KASCTierLevel____ * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** User's tier progress and status. If a user's tier status is statically fixed, this will be null as they do not progress from tier to tier. */ +@property (readonly) KASCTierProgress____ * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); +@end + + +/** + * Extra user profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude___.Companion"))) +@interface KASCUserProfileInclude___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Extra user profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileInclude___Companion *shared __attribute__((swift_name("shared"))); + +/** + * Extra user profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel__"))) +@interface KASCUserProfileModel__ : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel_____ * _Nullable)data included:(KASCUserProfileInclude___ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileModel__Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileModel__ *)doCopyData:(KASCUserProfileDataModel_____ * _Nullable)data included:(KASCUserProfileInclude___ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user profile data */ +@property (readonly) KASCUserProfileDataModel_____ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains user balance data */ +@property (readonly) KASCUserProfileInclude___ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel__.Companion"))) +@interface KASCUserProfileModel__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileModel__Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Deposit a giftcard [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardDepositApi"))) +@interface KASCGiftCardDepositApi : KASCApi + +/** + * Deposit a giftcard [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Deposit a giftcard [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCGiftCardDepositApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Deposit a giftcard + */ +- (KASCCFlow *> *)depositGiftCardDepositId:(NSString *)depositId __attribute__((swift_name("depositGiftCard(depositId:)"))); +@property (readonly) KASCCFlow *> *giftCardDepositState __attribute__((swift_name("giftCardDepositState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardDepositApi.Companion"))) +@interface KASCGiftCardDepositApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardDepositApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image__"))) +@interface KASCImage__ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage__Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage__ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image__.Companion"))) +@interface KASCImage__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language__________"))) +@interface KASCLanguage__________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage__________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage__________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language__________.Companion"))) +@interface KASCLanguage__________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage__________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction"))) +@interface KASCOfferAction : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferActionCompanion *companion __attribute__((swift_name("companion"))); +- (KASCOfferAction *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction.Companion"))) +@interface KASCOfferActionCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferActionCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel"))) +@interface KASCOfferModel : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCOfferModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCOfferModel *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this offer. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** Whether this offer must be claimed on a mobile app before being used in store. */ +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The offer description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this offer. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isCouponRedeemed __attribute__((swift_name("isCouponRedeemed"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this offer. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** The maximum purchase amount for this offer to be applied. */ +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); + +/** The minimum purchase amount for this offer to be applied */ +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); + +/** The multiplication factor of this offer. This only applies to Point Multiplier offers. */ +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this offer ever expires or not. If false, this offer is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this offer into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); + +/** The amount of points required for this offer to be applied. Only used for Convertible Coupons */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this offer */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this offer. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The offer title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This can be a free product, dollar based discount, percentage based discount, point multiplier, bonus points, and free shipping. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel.Companion"))) +@interface KASCOfferModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this offer. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation"))) +@interface KASCOfferTranslation : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage__________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferTranslationCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this offer. + */ +- (KASCOfferTranslation *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage__________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))); + +/** + * A language translation of this offer. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this offer. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this offer. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** where is this coupon available at. */ +@property (readonly) NSString * _Nullable couponAvailableAt __attribute__((swift_name("couponAvailableAt"))); + +/** The translated coupon description. */ +@property (readonly) NSString * _Nullable couponDescription __attribute__((swift_name("couponDescription"))); + +/** The language appropriate link of this coupon. */ +@property (readonly) NSString * _Nullable couponLink __attribute__((swift_name("couponLink"))); + +/** The translated coupon terms and conditions. */ +@property (readonly) NSString * _Nullable couponTermsConditions __attribute__((swift_name("couponTermsConditions"))); + +/** The translated coupon title. */ +@property (readonly) NSString * _Nullable couponTitle __attribute__((swift_name("couponTitle"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage__________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated offer description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this offer. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated offer terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated offer title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this offer. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation.Companion"))) +@interface KASCOfferTranslationCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this offer. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferTranslationCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this offer. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Contains the result of a transfer action. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferActionResultModel"))) +@interface KASCTransferActionResultModel : KASCModel +- (instancetype)initWithData:(KASCTransferMessage * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCTransferActionResultModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Contains the result of a transfer action. + */ +- (KASCTransferActionResultModel *)doCopyData:(KASCTransferMessage * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * Contains the result of a transfer action. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Contains the result of a transfer action. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Contains the result of a transfer action. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCTransferMessage * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * Contains the result of a transfer action. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferActionResultModel.Companion"))) +@interface KASCTransferActionResultModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Contains the result of a transfer action. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferActionResultModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Contains the result of a transfer action. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessage"))) +@interface KASCTransferMessage : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id typeId:(KASCLong * _Nullable)typeId type:(NSString * _Nullable)type description:(NSString * _Nullable)description points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount hidden:(KASCBoolean * _Nullable)hidden createdAt:(NSString * _Nullable)createdAt offer:(KASCOfferModel * _Nullable)offer giftCardQueue:(KASCTransferMessageGiftCardQueue * _Nullable)giftCardQueue actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:typeId:type:description:points:amount:hidden:createdAt:offer:giftCardQueue:actions:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransferMessageCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (KASCTransferMessage *)doCopyId:(KASCLong * _Nullable)id typeId:(KASCLong * _Nullable)typeId type:(NSString * _Nullable)type description:(NSString * _Nullable)description points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount hidden:(KASCBoolean * _Nullable)hidden createdAt:(NSString * _Nullable)createdAt offer:(KASCOfferModel * _Nullable)offer giftCardQueue:(KASCTransferMessageGiftCardQueue * _Nullable)giftCardQueue actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:typeId:type:description:points:amount:hidden:createdAt:offer:giftCardQueue:actions:)"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** The amount in $ sent in this transfer. */ +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); + +/** The orignal send date of this transfer. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** The description of this transfer. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCTransferMessageGiftCardQueue * _Nullable giftCardQueue __attribute__((swift_name("giftCardQueue"))); +@property (readonly) KASCBoolean * _Nullable hidden __attribute__((swift_name("hidden"))); + +/** The unique ID of this transfer. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** The gift card in this transfer if applicable. Gift cards are an offer sub-type in Kangaroo. */ +@property (readonly) KASCOfferModel * _Nullable offer __attribute__((swift_name("offer"))); + +/** The amount of points sent in this transfer. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** A string representation of this transfer type. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); + +/** The type ID of this transfer. */ +@property (readonly) KASCLong * _Nullable typeId __attribute__((swift_name("typeId"))); +@end + + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessage.Companion"))) +@interface KASCTransferMessageCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferMessageCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageActions"))) +@interface KASCTransferMessageActions : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransferMessageActionsCompanion *companion __attribute__((swift_name("companion"))); +- (KASCTransferMessageActions *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The action type. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageActions.Companion"))) +@interface KASCTransferMessageActionsCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferMessageActionsCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageGiftCardQueue"))) +@interface KASCTransferMessageGiftCardQueue : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id enabled:(KASCBoolean * _Nullable)enabled senderName:(NSString * _Nullable)senderName recipientName:(NSString * _Nullable)recipientName emailPhone:(NSString * _Nullable)emailPhone points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount createdAt:(NSString * _Nullable)createdAt scheduledAt:(NSString * _Nullable)scheduledAt __attribute__((swift_name("init(id:enabled:senderName:recipientName:emailPhone:points:amount:createdAt:scheduledAt:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransferMessageGiftCardQueueCompanion *companion __attribute__((swift_name("companion"))); +- (KASCTransferMessageGiftCardQueue *)doCopyId:(KASCLong * _Nullable)id enabled:(KASCBoolean * _Nullable)enabled senderName:(NSString * _Nullable)senderName recipientName:(NSString * _Nullable)recipientName emailPhone:(NSString * _Nullable)emailPhone points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount createdAt:(NSString * _Nullable)createdAt scheduledAt:(NSString * _Nullable)scheduledAt __attribute__((swift_name("doCopy(id:enabled:senderName:recipientName:emailPhone:points:amount:createdAt:scheduledAt:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount in $ sent in this transfer. */ +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); + +/** The orignal creation date of this transfer. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** The phone number or email address that this transfer was sent to. */ +@property (readonly) NSString * _Nullable emailPhone __attribute__((swift_name("emailPhone"))); + +/** Whether this item is enabled. Usually true. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The unique ID of this gift_card_queue */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** The amount of points sent in this transfer. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The name of the recipient of this transfer. */ +@property (readonly) NSString * _Nullable recipientName __attribute__((swift_name("recipientName"))); + +/** The original scheduled delivery date of this transfer. */ +@property (readonly) NSString * _Nullable scheduledAt __attribute__((swift_name("scheduledAt"))); + +/** The name of the sender of this transfer. */ +@property (readonly) NSString * _Nullable senderName __attribute__((swift_name("senderName"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageGiftCardQueue.Companion"))) +@interface KASCTransferMessageGiftCardQueueCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferMessageGiftCardQueueCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get public A la carte products list [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicAlaCarteProductsApi"))) +@interface KASCPublicAlaCarteProductsApi : KASCApi + +/** + * Get public A la carte products list [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get public A la carte products list [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCPublicAlaCarteProductsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get public A la carte products list + */ +- (KASCCFlow *> *)getPublicAlaCarteProducts __attribute__((swift_name("getPublicAlaCarteProducts()"))); +@property (readonly) KASCCFlow *> *publicAlaCarteProductsState __attribute__((swift_name("publicAlaCarteProductsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicAlaCarteProductsApi.Companion"))) +@interface KASCPublicAlaCarteProductsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicAlaCarteProductsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteItemModel__"))) +@interface KASCAlaCarteItemModel__ : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id points:(KASCInt * _Nullable)points product:(KASCProduct__ * _Nullable)product __attribute__((swift_name("init(id:points:product:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCAlaCarteItemModel__Companion *companion __attribute__((swift_name("companion"))); +- (KASCAlaCarteItemModel__ *)doCopyId:(KASCInt * _Nullable)id points:(KASCInt * _Nullable)points product:(KASCProduct__ * _Nullable)product __attribute__((swift_name("doCopy(id:points:product:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCInt * _Nullable points __attribute__((swift_name("points"))); +@property (readonly) KASCProduct__ * _Nullable product __attribute__((swift_name("product"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("AlaCarteItemModel__.Companion"))) +@interface KASCAlaCarteItemModel__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCAlaCarteItemModel__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images__"))) +@interface KASCImages__ : KASCBase +- (instancetype)initWithPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(path:large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImages__Companion *companion __attribute__((swift_name("companion"))); +- (KASCImages__ *)doCopyPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(path:large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable path __attribute__((swift_name("path"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images__.Companion"))) +@interface KASCImages__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImages__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language___________"))) +@interface KASCLanguage___________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage___________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage___________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language___________.Companion"))) +@interface KASCLanguage___________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage___________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages__"))) +@interface KASCLanguages__ : KASCBase +- (instancetype)initWithLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage___________ * _Nullable)language __attribute__((swift_name("init(languageId:title:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguages__Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguages__ *)doCopyLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage___________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCLanguage___________ * _Nullable language __attribute__((swift_name("language"))); +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages__.Companion"))) +@interface KASCLanguages__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguages__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product__"))) +@interface KASCProduct__ : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("init(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCProduct__Companion *companion __attribute__((swift_name("companion"))); +- (KASCProduct__ *)doCopyId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("doCopy(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCFloat * _Nullable actualPrice __attribute__((swift_name("actualPrice"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) NSArray * _Nullable productLanguages __attribute__((swift_name("productLanguages"))); +@property (readonly) NSString * _Nullable productSku __attribute__((swift_name("productSku"))); +@property (readonly) KASCFloat * _Nullable realPrice __attribute__((swift_name("realPrice"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product__.Companion"))) +@interface KASCProduct__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCProduct__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A list of a la carte products available to all users. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicALaCarteProductsModel"))) +@interface KASCPublicALaCarteProductsModel : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCPublicALaCarteProductsModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A list of a la carte products available to all users. + */ +- (KASCPublicALaCarteProductsModel *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * A list of a la carte products available to all users. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A list of a la carte products available to all users. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A list of a la carte products available to all users. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of a la carte products available to all users. */ +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * A list of a la carte products available to all users. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicALaCarteProductsModel.Companion"))) +@interface KASCPublicALaCarteProductsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A list of a la carte products available to all users. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicALaCarteProductsModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A list of a la carte products available to all users. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Create a paypal payment [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PayPalPaymentApi"))) +@interface KASCPayPalPaymentApi : KASCApi + +/** + * Create a paypal payment [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Create a paypal payment [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCPayPalPaymentApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Create a paypal payment + */ +- (KASCCFlow *> *)makePayPalPaymentIntent:(NSString *)intent provider:(NSString *)provider giftcardId:(int32_t)giftcardId paypalReturnUrl:(NSString *)paypalReturnUrl paypalCancelUrl:(NSString *)paypalCancelUrl __attribute__((swift_name("makePayPalPayment(intent:provider:giftcardId:paypalReturnUrl:paypalCancelUrl:)"))); +@property (readonly) KASCCFlow *> *payPalPaymentState __attribute__((swift_name("payPalPaymentState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PayPalPaymentApi.Companion"))) +@interface KASCPayPalPaymentApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPayPalPaymentApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * A paypal payment response data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PayPalPayment"))) +@interface KASCPayPalPayment : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id provider:(NSString * _Nullable)provider status:(NSString * _Nullable)status approvalUrl:(NSString * _Nullable)approvalUrl giftcard:(KASCPayPalPaymentGiftCard * _Nullable)giftcard __attribute__((swift_name("init(id:provider:status:approvalUrl:giftcard:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCPayPalPaymentCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A paypal payment response data + */ +- (KASCPayPalPayment *)doCopyId:(NSString * _Nullable)id provider:(NSString * _Nullable)provider status:(NSString * _Nullable)status approvalUrl:(NSString * _Nullable)approvalUrl giftcard:(KASCPayPalPaymentGiftCard * _Nullable)giftcard __attribute__((swift_name("doCopy(id:provider:status:approvalUrl:giftcard:)"))); + +/** + * A paypal payment response data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A paypal payment response data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A paypal payment response data + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable approvalUrl __attribute__((swift_name("approvalUrl"))); + +/** A giftcard received from a paypal payment */ +@property (readonly) KASCPayPalPaymentGiftCard * _Nullable giftcard __attribute__((swift_name("giftcard"))); + +/** Unique payment ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSString * _Nullable provider __attribute__((swift_name("provider"))); +@property (readonly) NSString * _Nullable status __attribute__((swift_name("status"))); +@end + + +/** + * A paypal payment response data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PayPalPayment.Companion"))) +@interface KASCPayPalPaymentCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A paypal payment response data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPayPalPaymentCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A paypal payment response data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A giftcard received from a paypal payment + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PayPalPaymentGiftCard"))) +@interface KASCPayPalPaymentGiftCard : KASCBase +- (instancetype)initWithId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title price:(KASCFloat * _Nullable)price currency:(NSString * _Nullable)currency quantity:(KASCInt * _Nullable)quantity __attribute__((swift_name("init(id:title:price:currency:quantity:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCPayPalPaymentGiftCardCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A giftcard received from a paypal payment + */ +- (KASCPayPalPaymentGiftCard *)doCopyId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title price:(KASCFloat * _Nullable)price currency:(NSString * _Nullable)currency quantity:(KASCInt * _Nullable)quantity __attribute__((swift_name("doCopy(id:title:price:currency:quantity:)"))); + +/** + * A giftcard received from a paypal payment + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A giftcard received from a paypal payment + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A giftcard received from a paypal payment + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable currency __attribute__((swift_name("currency"))); + +/** Unique gift card ID. */ +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCFloat * _Nullable price __attribute__((swift_name("price"))); +@property (readonly) KASCInt * _Nullable quantity __attribute__((swift_name("quantity"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + + +/** + * A giftcard received from a paypal payment + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PayPalPaymentGiftCard.Companion"))) +@interface KASCPayPalPaymentGiftCardCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A giftcard received from a paypal payment + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPayPalPaymentGiftCardCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A giftcard received from a paypal payment + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A paypal payment response + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PayPalPaymentModel"))) +@interface KASCPayPalPaymentModel : KASCModel +- (instancetype)initWithData:(KASCPayPalPayment * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCPayPalPaymentModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A paypal payment response + */ +- (KASCPayPalPaymentModel *)doCopyData:(KASCPayPalPayment * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * A paypal payment response + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A paypal payment response + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A paypal payment response + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A paypal payment response data */ +@property (readonly) KASCPayPalPayment * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * A paypal payment response + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PayPalPaymentModel.Companion"))) +@interface KASCPayPalPaymentModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A paypal payment response + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPayPalPaymentModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A paypal payment response + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * To perform a social media action and get rewarded after. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaActionPerformApi"))) +@interface KASCSocialMediaActionPerformApi : KASCApi + +/** + * To perform a social media action and get rewarded after. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * To perform a social media action and get rewarded after. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCSocialMediaActionPerformApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * To perform a social media action and get rewarded after. + */ +- (KASCCFlow *> *)performSocialMediaActionPerformSocialMediaActionRequest:(KASCPerformSocialMediaActionRequestModel *)performSocialMediaActionRequest businessId:(NSString *)businessId __attribute__((swift_name("performSocialMediaAction(performSocialMediaActionRequest:businessId:)"))); + +/** + * To perform a social media action and get rewarded after. + * + * This method is used by the Native artifact when dealing with object body params + */ +- (KASCCFlow *> *)performSocialMediaActionMethods:(NSDictionary *)methods businessId:(NSString *)businessId __attribute__((swift_name("performSocialMediaAction(methods:businessId:)"))); +@property (readonly) KASCCFlow *> *socialMediaActionPerformState __attribute__((swift_name("socialMediaActionPerformState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaActionPerformApi.Companion"))) +@interface KASCSocialMediaActionPerformApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSocialMediaActionPerformApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PerformActionResponseModel"))) +@interface KASCPerformActionResponseModel : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id status:(NSString * _Nullable)status __attribute__((swift_name("init(id:status:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCPerformActionResponseModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCPerformActionResponseModel *)doCopyId:(KASCInt * _Nullable)id status:(NSString * _Nullable)status __attribute__((swift_name("doCopy(id:status:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSString * _Nullable status __attribute__((swift_name("status"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PerformActionResponseModel.Companion"))) +@interface KASCPerformActionResponseModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPerformActionResponseModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PerformSocialMediaActionRequestModel"))) +@interface KASCPerformSocialMediaActionRequestModel : KASCModel +- (instancetype)initWithActionId:(int32_t)actionId branchId:(NSString *)branchId __attribute__((swift_name("init(actionId:branchId:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCPerformSocialMediaActionRequestModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCPerformSocialMediaActionRequestModel *)doCopyActionId:(int32_t)actionId branchId:(NSString *)branchId __attribute__((swift_name("doCopy(actionId:branchId:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) int32_t actionId __attribute__((swift_name("actionId"))); +@property (readonly) NSString *branchId __attribute__((swift_name("branchId"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PerformSocialMediaActionRequestModel.Companion"))) +@interface KASCPerformSocialMediaActionRequestModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPerformSocialMediaActionRequestModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PerformSocialMediaActionResponseModel"))) +@interface KASCPerformSocialMediaActionResponseModel : KASCModel +- (instancetype)initWithData:(KASCPerformActionResponseModel * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCPerformSocialMediaActionResponseModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCPerformSocialMediaActionResponseModel *)doCopyData:(KASCPerformActionResponseModel * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains social media action data */ +@property (readonly) KASCPerformActionResponseModel * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PerformSocialMediaActionResponseModel.Companion"))) +@interface KASCPerformSocialMediaActionResponseModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPerformSocialMediaActionResponseModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Redeem a set of rewards. This action costs points which will be deducted from the users' balance. Only Partner Rewards can be redeemed from the customer api. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemRewardsApi"))) +@interface KASCRedeemRewardsApi : KASCApi + +/** + * Redeem a set of rewards. This action costs points which will be deducted from the users' balance. Only Partner Rewards can be redeemed from the customer api. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Redeem a set of rewards. This action costs points which will be deducted from the users' balance. Only Partner Rewards can be redeemed from the customer api. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCRedeemRewardsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Redeem a set of rewards. This action costs points which will be deducted from the users' balance. Only Partner Rewards can be redeemed from the customer api. + */ +- (KASCCFlow *> *)redeemRewardRedeemRequest:(KASCRedeemRequest *)redeemRequest __attribute__((swift_name("redeemReward(redeemRequest:)"))); + +/** + * Redeem a set of rewards. This action costs points which will be deducted from the users' balance. Only Partner Rewards can be redeemed from the customer api. + * + * This method is used by the Native artifact when dealing with object body params + */ +- (KASCCFlow *> *)redeemRewardMethods:(NSDictionary *)methods __attribute__((swift_name("redeemReward(methods:)"))); +@property (readonly) KASCCFlow *> *redeemRewardsState __attribute__((swift_name("redeemRewardsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemRewardsApi.Companion"))) +@interface KASCRedeemRewardsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRedeemRewardsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language____________"))) +@interface KASCLanguage____________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage____________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage____________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language____________.Companion"))) +@interface KASCLanguage____________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage____________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemRequest"))) +@interface KASCRedeemRequest : KASCBase +- (instancetype)initWithBranchId:(NSString *)branchId catalogItems:(NSArray *)catalogItems intent:(NSString *)intent __attribute__((swift_name("init(branchId:catalogItems:intent:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCRedeemRequestCompanion *companion __attribute__((swift_name("companion"))); +- (KASCRedeemRequest *)doCopyBranchId:(NSString *)branchId catalogItems:(NSArray *)catalogItems intent:(NSString *)intent __attribute__((swift_name("doCopy(branchId:catalogItems:intent:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *branchId __attribute__((swift_name("branchId"))); + +/** A list of rewards to redeem. */ +@property (readonly) NSArray *catalogItems __attribute__((swift_name("catalogItems"))); +@property (readonly) NSString *intent __attribute__((swift_name("intent"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemRequest.Companion"))) +@interface KASCRedeemRequestCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRedeemRequestCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemResponseData"))) +@interface KASCRedeemResponseData : KASCBase +- (instancetype)initWithId:(int32_t)id amount:(KASCDouble * _Nullable)amount points:(KASCLong * _Nullable)points name:(NSString * _Nullable)name createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt customer:(KASCUserProfileModel___ * _Nullable)customer __attribute__((swift_name("init(id:amount:points:name:createdAt:updatedAt:customer:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCRedeemResponseDataCompanion *companion __attribute__((swift_name("companion"))); +- (KASCRedeemResponseData *)doCopyId:(int32_t)id amount:(KASCDouble * _Nullable)amount points:(KASCLong * _Nullable)points name:(NSString * _Nullable)name createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt customer:(KASCUserProfileModel___ * _Nullable)customer __attribute__((swift_name("doCopy(id:amount:points:name:createdAt:updatedAt:customer:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); +@property (readonly) KASCUserProfileModel___ * _Nullable customer __attribute__((swift_name("customer"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemResponseData.Companion"))) +@interface KASCRedeemResponseDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRedeemResponseDataCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemResponseModel"))) +@interface KASCRedeemResponseModel : KASCModel +- (instancetype)initWithData:(KASCRedeemResponseData *)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCRedeemResponseModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCRedeemResponseModel *)doCopyData:(KASCRedeemResponseData *)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCRedeemResponseData *data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemResponseModel.Companion"))) +@interface KASCRedeemResponseModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRedeemResponseModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedemptionModel"))) +@interface KASCRedemptionModel : KASCModel +- (instancetype)initWithId:(int32_t)id quantity:(int32_t)quantity __attribute__((swift_name("init(id:quantity:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCRedemptionModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCRedemptionModel *)doCopyId:(int32_t)id quantity:(int32_t)quantity __attribute__((swift_name("doCopy(id:quantity:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A unique ID identifying this reward. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The amount of times to redeem this reward */ +@property (readonly) int32_t quantity __attribute__((swift_name("quantity"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedemptionModel.Companion"))) +@interface KASCRedemptionModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRedemptionModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A referral program + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram____"))) +@interface KASCReferralProgram____ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("init(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCReferralProgram____Companion *companion __attribute__((swift_name("companion"))); + +/** + * A referral program + */ +- (KASCReferralProgram____ *)doCopyId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("doCopy(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))); + +/** + * A referral program + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A referral program + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A referral program + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The minimum purchawe amount required for a succesful referral. */ +@property (readonly) KASCDouble * _Nullable condMinAmount __attribute__((swift_name("condMinAmount"))); + +/** Denotes whether this referral program is currently active. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The number of days the new customer has to sign up in order for a referral to be sucessful. */ +@property (readonly) KASCLong * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); + +/** The unique id of this referral program. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Denotes whether this referral program has enabled share links. Referral share links are links that the customer can send to prospective referrals. A User can sign up to the business through this link in order to complete the referral. */ +@property (readonly) KASCBoolean * _Nullable linkReferralEnabled __attribute__((swift_name("linkReferralEnabled"))); + +/** The number of points the new customer will earn. */ +@property (readonly) KASCLong * _Nullable refereeEarns __attribute__((swift_name("refereeEarns"))); + +/** The number of points the new customer who made the referral will earn. */ +@property (readonly) KASCLong * _Nullable refererEarns __attribute__((swift_name("refererEarns"))); + +/** A link that can be shared to prospective referrals. */ +@property (readonly) NSString * _Nullable referralLink __attribute__((swift_name("referralLink"))); +@property (readonly) NSString * _Nullable ruleName __attribute__((swift_name("ruleName"))); +@end + + +/** + * A referral program + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram____.Companion"))) +@interface KASCReferralProgram____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A referral program + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCReferralProgram____Companion *shared __attribute__((swift_name("shared"))); + +/** + * A referral program + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel_____"))) +@interface KASCTierLevel_____ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevel_____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier level. + */ +- (KASCTierLevel_____ *)doCopyId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))); + +/** + * Represents a single tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The icon of this tier level. */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** The ID for this tier. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** translation for each tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); + +/** The name of this tier level. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount of points acquired that is required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachPoints __attribute__((swift_name("reachPoints"))); + +/** The amount of money spent required to reach this tier. */ +@property (readonly) KASCFloat * _Nullable reachSpend __attribute__((swift_name("reachSpend"))); + +/** The amount of visits made to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachVisits __attribute__((swift_name("reachVisits"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable tierPerks __attribute__((swift_name("tierPerks"))); +@end + + +/** + * Represents a single tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel_____.Companion"))) +@interface KASCTierLevel_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevel_____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation_____"))) +@interface KASCTierLevelTranslation_____ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage____________ * _Nullable)language __attribute__((swift_name("init(languageId:name:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevelTranslation_____Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierLevelTranslation_____ *)doCopyLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage____________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:name:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The description of this tier level as translated. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage____________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation_____.Companion"))) +@interface KASCTierLevelTranslation_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevelTranslation_____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier perk for a tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk_____"))) +@interface KASCTierPerk_____ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerk_____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (KASCTierPerk_____ *)doCopyId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Whether this tier perk is currently enabled or disabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The ID for this tier perk. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Whether the offer this tier perk is currently attached to is expired or not. */ +@property (readonly) KASCBoolean * _Nullable isExpired __attribute__((swift_name("isExpired"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); +@property (readonly) KASCLong * _Nullable offerId __attribute__((swift_name("offerId"))); +@property (readonly) KASCLong * _Nullable punchItemId __attribute__((swift_name("punchItemId"))); + +/** The ID for the tier level this tier perk is related to. */ +@property (readonly) KASCLong * _Nullable tierId __attribute__((swift_name("tierId"))); + +/** The title of this tier perk. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + + +/** + * Represents a single tier perk for a tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk_____.Companion"))) +@interface KASCTierPerk_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier perk for a tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerk_____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation_____"))) +@interface KASCTierPerkTranslation_____ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage____________ * _Nullable)language __attribute__((swift_name("init(languageId:title:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerkTranslation_____Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierPerkTranslation_____ *)doCopyLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage____________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage____________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation_____.Companion"))) +@interface KASCTierPerkTranslation_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerkTranslation_____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress_____"))) +@interface KASCTierProgress_____ : KASCBase +- (instancetype)initWithStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("init(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierProgress_____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (KASCTierProgress_____ *)doCopyStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("doCopy(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The end date for this tier session. The tier will be reset once this date is reached. */ +@property (readonly) NSString * _Nullable endDate __attribute__((swift_name("endDate"))); + +/** The amount of spend left in the user's current tier progress. Once they have acquired this many more amount of spend, they will be moved into the next tier. */ +@property (readonly) KASCFloat * _Nullable leftAmount __attribute__((swift_name("leftAmount"))); + +/** The amount of points left in the user's current tier progress. Once they have acquired this many more amount of points, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftPoints __attribute__((swift_name("leftPoints"))); + +/** The amount of visits left in the user's current tier progress. Once they have acquired this many more amount of visits, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftVisits __attribute__((swift_name("leftVisits"))); + +/** The name of the user's next tier level. */ +@property (readonly) NSString * _Nullable nextTierLevel __attribute__((swift_name("nextTierLevel"))); + +/** The start date for this tier session. */ +@property (readonly) NSString * _Nullable startDate __attribute__((swift_name("startDate"))); + +/** The name of the user's current tier level */ +@property (readonly) NSString * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** The name of the user's current tier level. Tiers are recalculated once per day, as such \"tier_level\" may not be completely up to date. */ +@property (readonly) NSString * _Nullable tierLevelLive __attribute__((swift_name("tierLevelLive"))); + +/** The users current tier progress in their \"tier_level\". This will be a number between 0 and 1. A tier progress of 0.5 means that the user has made 50% progress in their current tier. */ +@property (readonly) KASCFloat * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); + +/** Purchase amount between start_date and end_date. */ +@property (readonly) KASCFloat * _Nullable totalAmount __attribute__((swift_name("totalAmount"))); + +/** Purchase points between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalPoints __attribute__((swift_name("totalPoints"))); + +/** Purchase visits between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalVisits __attribute__((swift_name("totalVisits"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress_____.Companion"))) +@interface KASCTierProgress_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierProgress_____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile balance data. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance____"))) +@interface KASCUserBalance____ : KASCBase +- (instancetype)initWithPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("init(points:giftcard:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBalance____Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile balance data. + */ +- (KASCUserBalance____ *)doCopyPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("doCopy(points:giftcard:)"))); + +/** + * User Profile balance data. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile balance data. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile balance data. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount of store credit in the users' e-wallet. */ +@property (readonly) KASCDouble * _Nullable giftcard __attribute__((swift_name("giftcard"))); + +/** The number of points this user currently has. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + + +/** + * User Profile balance data. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance____.Companion"))) +@interface KASCUserBalance____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile balance data. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBalance____Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile balance data. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel______"))) +@interface KASCUserProfileDataModel______ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel______Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel______ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel______.Companion"))) +@interface KASCUserProfileDataModel______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel______Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Extra user profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude____"))) +@interface KASCUserProfileInclude____ : KASCBase +- (instancetype)initWithBalance:(KASCUserBalance____ * _Nullable)balance tierLevel:(KASCTierLevel_____ * _Nullable)tierLevel tierProgress:(KASCTierProgress_____ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("init(balance:tierLevel:tierProgress:referralPrograms:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserProfileInclude____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Extra user profile data + */ +- (KASCUserProfileInclude____ *)doCopyBalance:(KASCUserBalance____ * _Nullable)balance tierLevel:(KASCTierLevel_____ * _Nullable)tierLevel tierProgress:(KASCTierProgress_____ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("doCopy(balance:tierLevel:tierProgress:referralPrograms:)"))); + +/** + * Extra user profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Extra user profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Extra user profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** User Profile balance data. */ +@property (readonly) KASCUserBalance____ * _Nullable balance __attribute__((swift_name("balance"))); + +/** A list of referral programs the user has access to. */ +@property (readonly) NSArray * _Nullable referralPrograms __attribute__((swift_name("referralPrograms"))); + +/** User's tier status. */ +@property (readonly) KASCTierLevel_____ * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** User's tier progress and status. If a user's tier status is statically fixed, this will be null as they do not progress from tier to tier. */ +@property (readonly) KASCTierProgress_____ * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); +@end + + +/** + * Extra user profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude____.Companion"))) +@interface KASCUserProfileInclude____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Extra user profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileInclude____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Extra user profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel___"))) +@interface KASCUserProfileModel___ : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel______ * _Nullable)data included:(KASCUserProfileInclude____ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileModel___Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileModel___ *)doCopyData:(KASCUserProfileDataModel______ * _Nullable)data included:(KASCUserProfileInclude____ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user profile data */ +@property (readonly) KASCUserProfileDataModel______ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains user balance data */ +@property (readonly) KASCUserProfileInclude____ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel___.Companion"))) +@interface KASCUserProfileModel___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileModel___Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of products available to all users. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicProductsApi"))) +@interface KASCPublicProductsApi : KASCApi + +/** + * Get a list of products available to all users. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of products available to all users. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCPublicProductsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of products available to all users. + */ +- (KASCCFlow *> *)getPublicProducts __attribute__((swift_name("getPublicProducts()"))); +@property (readonly) KASCCFlow *> *publicProductsState __attribute__((swift_name("publicProductsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicProductsApi.Companion"))) +@interface KASCPublicProductsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicProductsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images___"))) +@interface KASCImages___ : KASCBase +- (instancetype)initWithPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(path:large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImages___Companion *companion __attribute__((swift_name("companion"))); +- (KASCImages___ *)doCopyPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(path:large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable path __attribute__((swift_name("path"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images___.Companion"))) +@interface KASCImages___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImages___Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_____________"))) +@interface KASCLanguage_____________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_____________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_____________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_____________.Companion"))) +@interface KASCLanguage_____________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_____________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages___"))) +@interface KASCLanguages___ : KASCBase +- (instancetype)initWithLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage_____________ * _Nullable)language __attribute__((swift_name("init(languageId:title:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguages___Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguages___ *)doCopyLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage_____________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCLanguage_____________ * _Nullable language __attribute__((swift_name("language"))); +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages___.Companion"))) +@interface KASCLanguages___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguages___Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product___"))) +@interface KASCProduct___ : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("init(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCProduct___Companion *companion __attribute__((swift_name("companion"))); +- (KASCProduct___ *)doCopyId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("doCopy(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCFloat * _Nullable actualPrice __attribute__((swift_name("actualPrice"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) NSArray * _Nullable productLanguages __attribute__((swift_name("productLanguages"))); +@property (readonly) NSString * _Nullable productSku __attribute__((swift_name("productSku"))); +@property (readonly) KASCFloat * _Nullable realPrice __attribute__((swift_name("realPrice"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product___.Companion"))) +@interface KASCProduct___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCProduct___Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A list of products available to all users. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicProductsModel"))) +@interface KASCPublicProductsModel : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCPublicProductsModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A list of products available to all users. + */ +- (KASCPublicProductsModel *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * A list of products available to all users. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A list of products available to all users. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A list of products available to all users. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of products available to all users. */ +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * A list of products available to all users. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicProductsModel.Companion"))) +@interface KASCPublicProductsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A list of products available to all users. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicProductsModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A list of products available to all users. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of rewards available to this user. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserRewardsApi"))) +@interface KASCUserRewardsApi : KASCApi + +/** + * Get a list of rewards available to this user. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of rewards available to this user. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserRewardsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of rewards available to this user. + */ +- (KASCCFlow *> *)getUserRewards __attribute__((swift_name("getUserRewards()"))); +@property (readonly) KASCCFlow *> *userRewardsState __attribute__((swift_name("userRewardsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserRewardsApi.Companion"))) +@interface KASCUserRewardsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserRewardsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image___"))) +@interface KASCImage___ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage___Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage___ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image___.Companion"))) +@interface KASCImage___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage___Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language______________"))) +@interface KASCLanguage______________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage______________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage______________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language______________.Companion"))) +@interface KASCLanguage______________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage______________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardModel_"))) +@interface KASCRewardModel_ : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished amount:(KASCFloat * _Nullable)amount realValue:(KASCFloat * _Nullable)realValue discountValue:(KASCFloat * _Nullable)discountValue partnerReward:(KASCBoolean * _Nullable)partnerReward redeemForGiftCard:(KASCBoolean * _Nullable)redeemForGiftCard type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link rewardLanguages:(NSArray * _Nullable)rewardLanguages __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:amount:realValue:discountValue:partnerReward:redeemForGiftCard:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:rewardLanguages:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCRewardModel_Companion *companion __attribute__((swift_name("companion"))); +- (KASCRewardModel_ *)doCopyId:(KASCInt * _Nullable)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished amount:(KASCFloat * _Nullable)amount realValue:(KASCFloat * _Nullable)realValue discountValue:(KASCFloat * _Nullable)discountValue partnerReward:(KASCBoolean * _Nullable)partnerReward redeemForGiftCard:(KASCBoolean * _Nullable)redeemForGiftCard type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link rewardLanguages:(NSArray * _Nullable)rewardLanguages __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:amount:realValue:discountValue:partnerReward:redeemForGiftCard:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:rewardLanguages:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCFloat * _Nullable amount __attribute__((swift_name("amount"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCFloat * _Nullable discountValue __attribute__((swift_name("discountValue"))); +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); + +/** A unique ID identifying this reward */ +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCBoolean * _Nullable partnerReward __attribute__((swift_name("partnerReward"))); +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); +@property (readonly) KASCFloat * _Nullable realValue __attribute__((swift_name("realValue"))); +@property (readonly) KASCBoolean * _Nullable redeemForGiftCard __attribute__((swift_name("redeemForGiftCard"))); +@property (readonly) NSArray * _Nullable rewardLanguages __attribute__((swift_name("rewardLanguages"))); +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardModel_.Companion"))) +@interface KASCRewardModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRewardModel_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardTranslation__"))) +@interface KASCRewardTranslation__ : KASCBase +- (instancetype)initWithId:(KASCInt * _Nullable)id languageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link language:(KASCLanguage______________ * _Nullable)language __attribute__((swift_name("init(id:languageId:title:description:termsConditions:link:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCRewardTranslation__Companion *companion __attribute__((swift_name("companion"))); +- (KASCRewardTranslation__ *)doCopyId:(KASCInt * _Nullable)id languageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link language:(KASCLanguage______________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:title:description:termsConditions:link:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCLanguage______________ * _Nullable language __attribute__((swift_name("language"))); +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardTranslation__.Companion"))) +@interface KASCRewardTranslation__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRewardTranslation__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserRewardsData_"))) +@interface KASCUserRewardsData_ : KASCBase +- (instancetype)initWithCatalogItems:(NSArray * _Nullable)catalogItems __attribute__((swift_name("init(catalogItems:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserRewardsData_Companion *companion __attribute__((swift_name("companion"))); +- (KASCUserRewardsData_ *)doCopyCatalogItems:(NSArray * _Nullable)catalogItems __attribute__((swift_name("doCopy(catalogItems:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains a list of all rewards available to this user */ +@property (readonly) NSArray * _Nullable catalogItems __attribute__((swift_name("catalogItems"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserRewardsData_.Companion"))) +@interface KASCUserRewardsData_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserRewardsData_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserRewardsModel"))) +@interface KASCUserRewardsModel : KASCModel +- (instancetype)initWithData:(KASCUserRewardsData_ * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserRewardsModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserRewardsModel *)doCopyData:(KASCUserRewardsData_ * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains a list of all rewards available to this user */ +@property (readonly) KASCUserRewardsData_ * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserRewardsModel.Companion"))) +@interface KASCUserRewardsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserRewardsModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Acquires business banners. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BannersApi"))) +@interface KASCBannersApi : KASCApi + +/** + * Acquires business banners. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Acquires business banners. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCBannersApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Acquires business banners. + */ +- (KASCCFlow *> *)getBanners __attribute__((swift_name("getBanners()"))); +@property (readonly) KASCCFlow *> *bannersState __attribute__((swift_name("bannersState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BannersApi.Companion"))) +@interface KASCBannersApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBannersApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * A business banner. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Banner"))) +@interface KASCBanner : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id type:(KASCInt * _Nullable)type imagePath:(NSString * _Nullable)imagePath link:(NSString * _Nullable)link createdAt:(NSString * _Nullable)createdAt publishedAt:(NSString * _Nullable)publishedAt expiresAt:(NSString * _Nullable)expiresAt language:(KASCLanguage_______________ * _Nullable)language __attribute__((swift_name("init(id:type:imagePath:link:createdAt:publishedAt:expiresAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBannerCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A business banner. + */ +- (KASCBanner *)doCopyId:(KASCLong * _Nullable)id type:(KASCInt * _Nullable)type imagePath:(NSString * _Nullable)imagePath link:(NSString * _Nullable)link createdAt:(NSString * _Nullable)createdAt publishedAt:(NSString * _Nullable)publishedAt expiresAt:(NSString * _Nullable)expiresAt language:(KASCLanguage_______________ * _Nullable)language __attribute__((swift_name("doCopy(id:type:imagePath:link:createdAt:publishedAt:expiresAt:language:)"))); + +/** + * A business banner. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A business banner. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A business banner. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); + +/** Unique banner id. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable imagePath __attribute__((swift_name("imagePath"))); +@property (readonly) KASCLanguage_______________ * _Nullable language __attribute__((swift_name("language"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable publishedAt __attribute__((swift_name("publishedAt"))); + +/** The banner type. */ +@property (readonly) KASCInt * _Nullable type __attribute__((swift_name("type"))); +@end + + +/** + * A business banner. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Banner.Companion"))) +@interface KASCBannerCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A business banner. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBannerCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A business banner. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business banners. Used to display promotional material. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BannersModel"))) +@interface KASCBannersModel : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCBannersModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Business banners. Used to display promotional material. + */ +- (KASCBannersModel *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * Business banners. Used to display promotional material. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business banners. Used to display promotional material. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business banners. Used to display promotional material. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * Business banners. Used to display promotional material. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BannersModel.Companion"))) +@interface KASCBannersModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business banners. Used to display promotional material. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBannersModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Business banners. Used to display promotional material. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_______________"))) +@interface KASCLanguage_______________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_______________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_______________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_______________.Companion"))) +@interface KASCLanguage_______________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_______________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Transfer points or e-wallet balance to another users account. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BalanceTransferApi"))) +@interface KASCBalanceTransferApi : KASCApi + +/** + * Transfer points or e-wallet balance to another users account. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Transfer points or e-wallet balance to another users account. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCBalanceTransferApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Transfer points or e-wallet balance to another users account. + */ +- (KASCCFlow *> *)transferTransferRequest:(KASCTransferRequestModel *)transferRequest __attribute__((swift_name("transfer(transferRequest:)"))); + +/** + * Transfer points or e-wallet balance to another users account. + * + * This method is used by the Native artifact when dealing with object body params + */ +- (KASCCFlow *> *)transferMethods:(NSDictionary *)methods __attribute__((swift_name("transfer(methods:)"))); +@property (readonly) KASCCFlow *> *balanceTransferState __attribute__((swift_name("balanceTransferState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BalanceTransferApi.Companion"))) +@interface KASCBalanceTransferApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBalanceTransferApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferDataModel"))) +@interface KASCTransferDataModel : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id amount:(KASCDouble * _Nullable)amount name:(NSString * _Nullable)name createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt customer:(KASCUserProfileDataModel_______ * _Nullable)customer __attribute__((swift_name("init(id:amount:name:createdAt:updatedAt:customer:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCTransferDataModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCTransferDataModel *)doCopyId:(KASCInt * _Nullable)id amount:(KASCDouble * _Nullable)amount name:(NSString * _Nullable)name createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt customer:(KASCUserProfileDataModel_______ * _Nullable)customer __attribute__((swift_name("doCopy(id:amount:name:createdAt:updatedAt:customer:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); +@property (readonly) KASCUserProfileDataModel_______ * _Nullable customer __attribute__((swift_name("customer"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferDataModel.Companion"))) +@interface KASCTransferDataModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferDataModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferRequestFrom"))) +@interface KASCTransferRequestFrom : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name __attribute__((swift_name("init(name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransferRequestFromCompanion *companion __attribute__((swift_name("companion"))); +- (KASCTransferRequestFrom *)doCopyName:(NSString * _Nullable)name __attribute__((swift_name("doCopy(name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferRequestFrom.Companion"))) +@interface KASCTransferRequestFromCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferRequestFromCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferRequestModel"))) +@interface KASCTransferRequestModel : KASCModel +- (instancetype)initWithIntent:(NSString *)intent businessId:(NSString *)businessId language:(NSString *)language from:(KASCTransferRequestFrom *)from to:(KASCTransferRequestTo *)to points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount giftcardId:(KASCInt * _Nullable)giftcardId __attribute__((swift_name("init(intent:businessId:language:from:to:points:amount:giftcardId:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCTransferRequestModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCTransferRequestModel *)doCopyIntent:(NSString *)intent businessId:(NSString *)businessId language:(NSString *)language from:(KASCTransferRequestFrom *)from to:(KASCTransferRequestTo *)to points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount giftcardId:(KASCInt * _Nullable)giftcardId __attribute__((swift_name("doCopy(intent:businessId:language:from:to:points:amount:giftcardId:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); +@property (readonly) NSString *businessId __attribute__((swift_name("businessId"))); +@property (readonly) KASCTransferRequestFrom *from __attribute__((swift_name("from"))); +@property (readonly) KASCInt * _Nullable giftcardId __attribute__((swift_name("giftcardId"))); + +/** The transfer intent for this transfer. This can be transfer_amount or transfer_points */ +@property (readonly) NSString *intent __attribute__((swift_name("intent"))); + +/** The two character language code of the language that this transfer should be sent in. */ +@property (readonly) NSString *language __attribute__((swift_name("language"))); +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@property (readonly) KASCTransferRequestTo *to __attribute__((swift_name("to"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferRequestModel.Companion"))) +@interface KASCTransferRequestModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferRequestModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * The recipient data for this transfer. Either a phone number or an email address is required. If a phone number is used, the two character ISO country code must be supplied as well. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferRequestTo"))) +@interface KASCTransferRequestTo : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name phone:(NSString * _Nullable)phone countryCode:(NSString * _Nullable)countryCode email:(NSString * _Nullable)email __attribute__((swift_name("init(name:phone:countryCode:email:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransferRequestToCompanion *companion __attribute__((swift_name("companion"))); + +/** + * The recipient data for this transfer. Either a phone number or an email address is required. If a phone number is used, the two character ISO country code must be supplied as well. + */ +- (KASCTransferRequestTo *)doCopyName:(NSString * _Nullable)name phone:(NSString * _Nullable)phone countryCode:(NSString * _Nullable)countryCode email:(NSString * _Nullable)email __attribute__((swift_name("doCopy(name:phone:countryCode:email:)"))); + +/** + * The recipient data for this transfer. Either a phone number or an email address is required. If a phone number is used, the two character ISO country code must be supplied as well. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * The recipient data for this transfer. Either a phone number or an email address is required. If a phone number is used, the two character ISO country code must be supplied as well. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * The recipient data for this transfer. Either a phone number or an email address is required. If a phone number is used, the two character ISO country code must be supplied as well. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); +@end + + +/** + * The recipient data for this transfer. Either a phone number or an email address is required. If a phone number is used, the two character ISO country code must be supplied as well. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferRequestTo.Companion"))) +@interface KASCTransferRequestToCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * The recipient data for this transfer. Either a phone number or an email address is required. If a phone number is used, the two character ISO country code must be supplied as well. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferRequestToCompanion *shared __attribute__((swift_name("shared"))); + +/** + * The recipient data for this transfer. Either a phone number or an email address is required. If a phone number is used, the two character ISO country code must be supplied as well. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferResponseModel"))) +@interface KASCTransferResponseModel : KASCModel +- (instancetype)initWithData:(KASCTransferDataModel * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCTransferResponseModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCTransferResponseModel *)doCopyData:(KASCTransferDataModel * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user profile data */ +@property (readonly) KASCTransferDataModel * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferResponseModel.Companion"))) +@interface KASCTransferResponseModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferResponseModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_______"))) +@interface KASCUserProfileDataModel_______ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel_______Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel_______ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_______.Companion"))) +@interface KASCUserProfileDataModel_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel_______Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of gift cards available for purchase [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardsApi"))) +@interface KASCGiftCardsApi : KASCApi + +/** + * Get a list of gift cards available for purchase [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of gift cards available for purchase [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCGiftCardsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of gift cards available for purchase + */ +- (KASCCFlow *> *)getGiftCards __attribute__((swift_name("getGiftCards()"))); +@property (readonly) KASCCFlow *> *giftCardsState __attribute__((swift_name("giftCardsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardsApi.Companion"))) +@interface KASCGiftCardsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardAction"))) +@interface KASCGiftCardAction : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCGiftCardActionCompanion *companion __attribute__((swift_name("companion"))); +- (KASCGiftCardAction *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardAction.Companion"))) +@interface KASCGiftCardActionCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardActionCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardModel"))) +@interface KASCGiftCardModel : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCGiftCardModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCGiftCardModel *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this gift card. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The gift card description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this gift card */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this gift ard. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this gift card. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this gift card ever expires or not. If false, this gift card is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this gift card into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this gift card */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this gift card */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this gift card. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The gift card title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This is a gift card. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardModel.Companion"))) +@interface KASCGiftCardModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this gift card. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardTranslation"))) +@interface KASCGiftCardTranslation : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink language:(KASCLanguage________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCGiftCardTranslationCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this gift card. + */ +- (KASCGiftCardTranslation *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink language:(KASCLanguage________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:language:)"))); + +/** + * A language translation of this gift card. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this gift card. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this gift card. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated gift card description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this gift card. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated gift card terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated gift card title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this gift card. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardTranslation.Companion"))) +@interface KASCGiftCardTranslationCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this gift card. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardTranslationCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this gift card. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardsModel"))) +@interface KASCGiftCardsModel : KASCModel +- (instancetype)initWithData:(NSArray *)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCGiftCardsModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCGiftCardsModel *)doCopyData:(NSArray *)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of all gift cards available to this user */ +@property (readonly) NSArray *data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardsModel.Companion"))) +@interface KASCGiftCardsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardsModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image____"))) +@interface KASCImage____ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage____Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage____ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image____.Companion"))) +@interface KASCImage____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language________________"))) +@interface KASCLanguage________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language________________.Companion"))) +@interface KASCLanguage________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of businesses associated with this user account and application [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessesApi"))) +@interface KASCBusinessesApi : KASCApi + +/** + * Get a list of businesses associated with this user account and application [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of businesses associated with this user account and application [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCBusinessesApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of businesses associated with this user account and application + */ +- (KASCCFlow *> *)getBusinesses __attribute__((swift_name("getBusinesses()"))); +@property (readonly) KASCCFlow *> *businessesState __attribute__((swift_name("businessesState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessesApi.Companion"))) +@interface KASCBusinessesApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessesApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory__"))) +@interface KASCBusinessCategory__ : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("init(name:icon:code:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessCategory__Companion *companion __attribute__((swift_name("companion"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (KASCBusinessCategory__ *)doCopyName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("doCopy(name:icon:code:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique ategory code for this category */ +@property (readonly) NSString * _Nullable code __attribute__((swift_name("code"))); + +/** Url to this category's icon */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** Name of this category */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory__.Companion"))) +@interface KASCBusinessCategory__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessCategory__Companion *shared __attribute__((swift_name("shared"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData__"))) +@interface KASCBusinessData__ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage_____ * _Nullable)logo logoTransparentBackground:(KASCImage_____ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage_____ * _Nullable)coverPhoto category:(KASCBusinessCategory__ * _Nullable)category __attribute__((swift_name("init(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessData__Companion *companion __attribute__((swift_name("companion"))); + +/** + * Business profile data + */ +- (KASCBusinessData__ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage_____ * _Nullable)logo logoTransparentBackground:(KASCImage_____ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage_____ * _Nullable)coverPhoto category:(KASCBusinessCategory__ * _Nullable)category __attribute__((swift_name("doCopy(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))); + +/** + * Business profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** General about text for the business */ +@property (readonly) NSString * _Nullable about __attribute__((swift_name("about"))); +@property (readonly) KASCBusinessCategory__ * _Nullable category __attribute__((swift_name("category"))); + +/** Whether this is a conglomerate business. Conglomerate businesses are umbrellas for multiple business' in Kangaroo */ +@property (readonly) NSString * _Nullable conglomerate __attribute__((swift_name("conglomerate"))); +@property (readonly) KASCImage_____ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique business ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage_____ * _Nullable logo __attribute__((swift_name("logo"))); +@property (readonly) KASCImage_____ * _Nullable logoTransparentBackground __attribute__((swift_name("logoTransparentBackground"))); + +/** The manner in which this business rewards its customers. This can be by purchase amount of by visit to the store */ +@property (readonly) NSString * _Nullable loyaltyType __attribute__((swift_name("loyaltyType"))); + +/** The name of this business */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** Whether this is a white label business. White label business' don't appear in the Kangaroo Mobile Customer app, as they usually have their own app. */ +@property (readonly) NSString * _Nullable whiteLabel __attribute__((swift_name("whiteLabel"))); +@end + + +/** + * Business profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData__.Companion"))) +@interface KASCBusinessData__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessData__Companion *shared __attribute__((swift_name("shared"))); + +/** + * Business profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A list of businesses associated with this user and this app. Usually there will only be one business. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Businesses"))) +@interface KASCBusinesses : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCBusinessesCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A list of businesses associated with this user and this app. Usually there will only be one business. + */ +- (KASCBusinesses *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * A list of businesses associated with this user and this app. Usually there will only be one business. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A list of businesses associated with this user and this app. Usually there will only be one business. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A list of businesses associated with this user and this app. Usually there will only be one business. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of businesses for this user and this app. */ +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * A list of businesses associated with this user and this app. Usually there will only be one business. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Businesses.Companion"))) +@interface KASCBusinessesCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A list of businesses associated with this user and this app. Usually there will only be one business. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessesCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A list of businesses associated with this user and this app. Usually there will only be one business. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_____"))) +@interface KASCImage_____ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage_____Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage_____ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_____.Companion"))) +@interface KASCImage_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage_____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of available coupons for this user. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserCouponsApi"))) +@interface KASCUserCouponsApi : KASCApi + +/** + * Get a list of available coupons for this user. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of available coupons for this user. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserCouponsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of available coupons for this user. + */ +- (KASCCFlow *> *)getUserCoupons __attribute__((swift_name("getUserCoupons()"))); +@property (readonly) KASCCFlow *> *userCouponsState __attribute__((swift_name("userCouponsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserCouponsApi.Companion"))) +@interface KASCUserCouponsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserCouponsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CouponModel"))) +@interface KASCCouponModel : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description termsConditions:(NSString * _Nullable)termsConditions qrcode:(NSString * _Nullable)qrcode couponLocked:(KASCBoolean * _Nullable)couponLocked couponRedeemed:(KASCBoolean * _Nullable)couponRedeemed couponType:(NSString * _Nullable)couponType expiresAt:(NSString * _Nullable)expiresAt offer:(KASCOfferModel_ * _Nullable)offer __attribute__((swift_name("init(id:title:description:termsConditions:qrcode:couponLocked:couponRedeemed:couponType:expiresAt:offer:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCCouponModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCCouponModel *)doCopyId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description termsConditions:(NSString * _Nullable)termsConditions qrcode:(NSString * _Nullable)qrcode couponLocked:(KASCBoolean * _Nullable)couponLocked couponRedeemed:(KASCBoolean * _Nullable)couponRedeemed couponType:(NSString * _Nullable)couponType expiresAt:(NSString * _Nullable)expiresAt offer:(KASCOfferModel_ * _Nullable)offer __attribute__((swift_name("doCopy(id:title:description:termsConditions:qrcode:couponLocked:couponRedeemed:couponType:expiresAt:offer:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCBoolean * _Nullable couponLocked __attribute__((swift_name("couponLocked"))); +@property (readonly) KASCBoolean * _Nullable couponRedeemed __attribute__((swift_name("couponRedeemed"))); +@property (readonly) NSString * _Nullable couponType __attribute__((swift_name("couponType"))); + +/** The coupon description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); + +/** A unique ID identifying this coupon */ +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCOfferModel_ * _Nullable offer __attribute__((swift_name("offer"))); +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** The terms and conditions attached to this coupon. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The coupon title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CouponModel.Companion"))) +@interface KASCCouponModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCouponModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image______"))) +@interface KASCImage______ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage______Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage______ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image______.Companion"))) +@interface KASCImage______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_________________"))) +@interface KASCLanguage_________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_________________.Companion"))) +@interface KASCLanguage_________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction_"))) +@interface KASCOfferAction_ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferAction_Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferAction_ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction_.Companion"))) +@interface KASCOfferAction_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferAction_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel_"))) +@interface KASCOfferModel_ : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCOfferModel_Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferModel_ *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this offer. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** Whether this offer must be claimed on a mobile app before being used in store. */ +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The offer description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this offer. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isCouponRedeemed __attribute__((swift_name("isCouponRedeemed"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this offer. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** The maximum purchase amount for this offer to be applied. */ +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); + +/** The minimum purchase amount for this offer to be applied */ +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); + +/** The multiplication factor of this offer. This only applies to Point Multiplier offers. */ +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this offer ever expires or not. If false, this offer is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this offer into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); + +/** The amount of points required for this offer to be applied. Only used for Convertible Coupons */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this offer */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this offer. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The offer title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This can be a free product, dollar based discount, percentage based discount, point multiplier, bonus points, and free shipping. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel_.Companion"))) +@interface KASCOfferModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferModel_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this offer. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation_"))) +@interface KASCOfferTranslation_ : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage_________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferTranslation_Companion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this offer. + */ +- (KASCOfferTranslation_ *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage_________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))); + +/** + * A language translation of this offer. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this offer. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this offer. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** where is this coupon available at. */ +@property (readonly) NSString * _Nullable couponAvailableAt __attribute__((swift_name("couponAvailableAt"))); + +/** The translated coupon description. */ +@property (readonly) NSString * _Nullable couponDescription __attribute__((swift_name("couponDescription"))); + +/** The language appropriate link of this coupon. */ +@property (readonly) NSString * _Nullable couponLink __attribute__((swift_name("couponLink"))); + +/** The translated coupon terms and conditions. */ +@property (readonly) NSString * _Nullable couponTermsConditions __attribute__((swift_name("couponTermsConditions"))); + +/** The translated coupon title. */ +@property (readonly) NSString * _Nullable couponTitle __attribute__((swift_name("couponTitle"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated offer description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this offer. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated offer terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated offer title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this offer. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation_.Companion"))) +@interface KASCOfferTranslation_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this offer. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferTranslation_Companion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this offer. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserCouponsModel"))) +@interface KASCUserCouponsModel : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserCouponsModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserCouponsModel *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains a list of all coupons available to this user */ +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserCouponsModel.Companion"))) +@interface KASCUserCouponsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserCouponsModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of social media links for this business [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessSocialMediaLinksApi"))) +@interface KASCUserBusinessSocialMediaLinksApi : KASCApi + +/** + * Get a list of social media links for this business [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of social media links for this business [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserBusinessSocialMediaLinksApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of social media links for this business + */ +- (KASCCFlow *> *)getUserBusinessSocialMediaLinksBusinessId:(NSString *)businessId __attribute__((swift_name("getUserBusinessSocialMediaLinks(businessId:)"))); +@property (readonly) KASCCFlow *> *userBusinessSocialMediaLinksState __attribute__((swift_name("userBusinessSocialMediaLinksState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessSocialMediaLinksApi.Companion"))) +@interface KASCUserBusinessSocialMediaLinksApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessSocialMediaLinksApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessActionModel"))) +@interface KASCBusinessActionModel : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id points:(KASCLong * _Nullable)points actionId:(KASCInt * _Nullable)actionId __attribute__((swift_name("init(id:points:actionId:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCBusinessActionModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCBusinessActionModel *)doCopyId:(KASCInt * _Nullable)id points:(KASCLong * _Nullable)points actionId:(KASCInt * _Nullable)actionId __attribute__((swift_name("doCopy(id:points:actionId:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCInt * _Nullable actionId __attribute__((swift_name("actionId"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessActionModel.Companion"))) +@interface KASCBusinessActionModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessActionModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaLinksIncluded"))) +@interface KASCSocialMediaLinksIncluded : KASCBase +- (instancetype)initWithSocialMedia:(NSArray * _Nullable)socialMedia __attribute__((swift_name("init(socialMedia:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCSocialMediaLinksIncludedCompanion *companion __attribute__((swift_name("companion"))); +- (KASCSocialMediaLinksIncluded *)doCopySocialMedia:(NSArray * _Nullable)socialMedia __attribute__((swift_name("doCopy(socialMedia:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable socialMedia __attribute__((swift_name("socialMedia"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaLinksIncluded.Companion"))) +@interface KASCSocialMediaLinksIncludedCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSocialMediaLinksIncludedCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Social media links for this business + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaLinksModel"))) +@interface KASCSocialMediaLinksModel : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel________ * _Nullable)data included:(KASCSocialMediaLinksIncluded * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCSocialMediaLinksModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Social media links for this business + */ +- (KASCSocialMediaLinksModel *)doCopyData:(KASCUserProfileDataModel________ * _Nullable)data included:(KASCSocialMediaLinksIncluded * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * Social media links for this business + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Social media links for this business + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Social media links for this business + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user data */ +@property (readonly) KASCUserProfileDataModel________ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains social media links */ +@property (readonly) KASCSocialMediaLinksIncluded * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * Social media links for this business + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaLinksModel.Companion"))) +@interface KASCSocialMediaLinksModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Social media links for this business + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSocialMediaLinksModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Social media links for this business + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaModel"))) +@interface KASCSocialMediaModel : KASCModel +- (instancetype)initWithIcon:(NSString * _Nullable)icon url:(NSString * _Nullable)url businessAction:(KASCBusinessActionModel * _Nullable)businessAction userActionCompleted:(KASCBoolean * _Nullable)userActionCompleted __attribute__((swift_name("init(icon:url:businessAction:userActionCompleted:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCSocialMediaModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCSocialMediaModel *)doCopyIcon:(NSString * _Nullable)icon url:(NSString * _Nullable)url businessAction:(KASCBusinessActionModel * _Nullable)businessAction userActionCompleted:(KASCBoolean * _Nullable)userActionCompleted __attribute__((swift_name("doCopy(icon:url:businessAction:userActionCompleted:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCBusinessActionModel * _Nullable businessAction __attribute__((swift_name("businessAction"))); +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); +@property (readonly) NSString * _Nullable url __attribute__((swift_name("url"))); +@property (readonly) KASCBoolean * _Nullable userActionCompleted __attribute__((swift_name("userActionCompleted"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaModel.Companion"))) +@interface KASCSocialMediaModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSocialMediaModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel________"))) +@interface KASCUserProfileDataModel________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel________.Companion"))) +@interface KASCUserProfileDataModel________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Redeem a coupon. Coupons are created after an offer has been redeemed. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemCouponsApi"))) +@interface KASCRedeemCouponsApi : KASCApi + +/** + * Redeem a coupon. Coupons are created after an offer has been redeemed. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Redeem a coupon. Coupons are created after an offer has been redeemed. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCRedeemCouponsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Redeem a coupon. Coupons are created after an offer has been redeemed. + */ +- (KASCCFlow *> *)redeemCouponRedeemCouponRequest:(KASCRedeemCouponRequest *)redeemCouponRequest __attribute__((swift_name("redeemCoupon(redeemCouponRequest:)"))); + +/** + * Redeem a coupon. Coupons are created after an offer has been redeemed. + * + * This method is used by the Native artifact when dealing with object body params + */ +- (KASCCFlow *> *)redeemCouponMethods:(NSDictionary *)methods __attribute__((swift_name("redeemCoupon(methods:)"))); +@property (readonly) KASCCFlow *> *redeemCouponsState __attribute__((swift_name("redeemCouponsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemCouponsApi.Companion"))) +@interface KASCRedeemCouponsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRedeemCouponsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CouponRedemptionModel"))) +@interface KASCCouponRedemptionModel : KASCModel +- (instancetype)initWithId:(int64_t)id __attribute__((swift_name("init(id:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCCouponRedemptionModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCCouponRedemptionModel *)doCopyId:(int64_t)id __attribute__((swift_name("doCopy(id:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A unique ID identifying this coupon. */ +@property (readonly) int64_t id __attribute__((swift_name("id"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CouponRedemptionModel.Companion"))) +@interface KASCCouponRedemptionModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCouponRedemptionModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CouponRedemptionResponseData"))) +@interface KASCCouponRedemptionResponseData : KASCBase +- (instancetype)initWithId:(int32_t)id amount:(KASCDouble * _Nullable)amount points:(KASCLong * _Nullable)points name:(NSString * _Nullable)name transactionType:(KASCLong * _Nullable)transactionType createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt customer:(KASCUserProfileModel____ * _Nullable)customer __attribute__((swift_name("init(id:amount:points:name:transactionType:createdAt:updatedAt:customer:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCCouponRedemptionResponseDataCompanion *companion __attribute__((swift_name("companion"))); +- (KASCCouponRedemptionResponseData *)doCopyId:(int32_t)id amount:(KASCDouble * _Nullable)amount points:(KASCLong * _Nullable)points name:(NSString * _Nullable)name transactionType:(KASCLong * _Nullable)transactionType createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt customer:(KASCUserProfileModel____ * _Nullable)customer __attribute__((swift_name("doCopy(id:amount:points:name:transactionType:createdAt:updatedAt:customer:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); +@property (readonly) KASCUserProfileModel____ * _Nullable customer __attribute__((swift_name("customer"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@property (readonly) KASCLong * _Nullable transactionType __attribute__((swift_name("transactionType"))); +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CouponRedemptionResponseData.Companion"))) +@interface KASCCouponRedemptionResponseDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCouponRedemptionResponseDataCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CouponRedemptionResponseModel"))) +@interface KASCCouponRedemptionResponseModel : KASCModel +- (instancetype)initWithData:(KASCCouponRedemptionResponseData *)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCCouponRedemptionResponseModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCCouponRedemptionResponseModel *)doCopyData:(KASCCouponRedemptionResponseData *)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCCouponRedemptionResponseData *data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CouponRedemptionResponseModel.Companion"))) +@interface KASCCouponRedemptionResponseModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCouponRedemptionResponseModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language__________________"))) +@interface KASCLanguage__________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage__________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage__________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language__________________.Companion"))) +@interface KASCLanguage__________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage__________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferRedemptionModel"))) +@interface KASCOfferRedemptionModel : KASCModel +- (instancetype)initWithId:(int64_t)id __attribute__((swift_name("init(id:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCOfferRedemptionModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCOfferRedemptionModel *)doCopyId:(int64_t)id __attribute__((swift_name("doCopy(id:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A unique ID identifying this offer. */ +@property (readonly) int64_t id __attribute__((swift_name("id"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferRedemptionModel.Companion"))) +@interface KASCOfferRedemptionModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferRedemptionModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemCouponRequest"))) +@interface KASCRedeemCouponRequest : KASCBase +- (instancetype)initWithIntent:(NSString *)intent pinCode:(NSString *)pinCode coupon:(KASCCouponRedemptionModel *)coupon offer:(KASCOfferRedemptionModel *)offer int:(NSString * _Nullable)int_ __attribute__((swift_name("init(intent:pinCode:coupon:offer:int:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCRedeemCouponRequestCompanion *companion __attribute__((swift_name("companion"))); +- (KASCRedeemCouponRequest *)doCopyIntent:(NSString *)intent pinCode:(NSString *)pinCode coupon:(KASCCouponRedemptionModel *)coupon offer:(KASCOfferRedemptionModel *)offer int:(NSString * _Nullable)int_ __attribute__((swift_name("doCopy(intent:pinCode:coupon:offer:int:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The coupon being redeemed */ +@property (readonly) KASCCouponRedemptionModel *coupon __attribute__((swift_name("coupon"))); +@property (readonly, getter=int) NSString * _Nullable int_ __attribute__((swift_name("int_"))); +@property (readonly) NSString *intent __attribute__((swift_name("intent"))); + +/** The offer that created this coupon */ +@property (readonly) KASCOfferRedemptionModel *offer __attribute__((swift_name("offer"))); +@property (readonly) NSString *pinCode __attribute__((swift_name("pinCode"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RedeemCouponRequest.Companion"))) +@interface KASCRedeemCouponRequestCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRedeemCouponRequestCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A referral program + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram_____"))) +@interface KASCReferralProgram_____ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("init(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCReferralProgram_____Companion *companion __attribute__((swift_name("companion"))); + +/** + * A referral program + */ +- (KASCReferralProgram_____ *)doCopyId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("doCopy(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))); + +/** + * A referral program + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A referral program + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A referral program + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The minimum purchawe amount required for a succesful referral. */ +@property (readonly) KASCDouble * _Nullable condMinAmount __attribute__((swift_name("condMinAmount"))); + +/** Denotes whether this referral program is currently active. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The number of days the new customer has to sign up in order for a referral to be sucessful. */ +@property (readonly) KASCLong * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); + +/** The unique id of this referral program. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Denotes whether this referral program has enabled share links. Referral share links are links that the customer can send to prospective referrals. A User can sign up to the business through this link in order to complete the referral. */ +@property (readonly) KASCBoolean * _Nullable linkReferralEnabled __attribute__((swift_name("linkReferralEnabled"))); + +/** The number of points the new customer will earn. */ +@property (readonly) KASCLong * _Nullable refereeEarns __attribute__((swift_name("refereeEarns"))); + +/** The number of points the new customer who made the referral will earn. */ +@property (readonly) KASCLong * _Nullable refererEarns __attribute__((swift_name("refererEarns"))); + +/** A link that can be shared to prospective referrals. */ +@property (readonly) NSString * _Nullable referralLink __attribute__((swift_name("referralLink"))); +@property (readonly) NSString * _Nullable ruleName __attribute__((swift_name("ruleName"))); +@end + + +/** + * A referral program + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram_____.Companion"))) +@interface KASCReferralProgram_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A referral program + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCReferralProgram_____Companion *shared __attribute__((swift_name("shared"))); + +/** + * A referral program + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel______"))) +@interface KASCTierLevel______ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevel______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier level. + */ +- (KASCTierLevel______ *)doCopyId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))); + +/** + * Represents a single tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The icon of this tier level. */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** The ID for this tier. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** translation for each tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); + +/** The name of this tier level. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount of points acquired that is required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachPoints __attribute__((swift_name("reachPoints"))); + +/** The amount of money spent required to reach this tier. */ +@property (readonly) KASCFloat * _Nullable reachSpend __attribute__((swift_name("reachSpend"))); + +/** The amount of visits made to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachVisits __attribute__((swift_name("reachVisits"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable tierPerks __attribute__((swift_name("tierPerks"))); +@end + + +/** + * Represents a single tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel______.Companion"))) +@interface KASCTierLevel______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevel______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation______"))) +@interface KASCTierLevelTranslation______ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage__________________ * _Nullable)language __attribute__((swift_name("init(languageId:name:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevelTranslation______Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierLevelTranslation______ *)doCopyLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage__________________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:name:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The description of this tier level as translated. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage__________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation______.Companion"))) +@interface KASCTierLevelTranslation______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevelTranslation______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier perk for a tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk______"))) +@interface KASCTierPerk______ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerk______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (KASCTierPerk______ *)doCopyId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Whether this tier perk is currently enabled or disabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The ID for this tier perk. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Whether the offer this tier perk is currently attached to is expired or not. */ +@property (readonly) KASCBoolean * _Nullable isExpired __attribute__((swift_name("isExpired"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); +@property (readonly) KASCLong * _Nullable offerId __attribute__((swift_name("offerId"))); +@property (readonly) KASCLong * _Nullable punchItemId __attribute__((swift_name("punchItemId"))); + +/** The ID for the tier level this tier perk is related to. */ +@property (readonly) KASCLong * _Nullable tierId __attribute__((swift_name("tierId"))); + +/** The title of this tier perk. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + + +/** + * Represents a single tier perk for a tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk______.Companion"))) +@interface KASCTierPerk______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier perk for a tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerk______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation______"))) +@interface KASCTierPerkTranslation______ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage__________________ * _Nullable)language __attribute__((swift_name("init(languageId:title:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerkTranslation______Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierPerkTranslation______ *)doCopyLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage__________________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage__________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation______.Companion"))) +@interface KASCTierPerkTranslation______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerkTranslation______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress______"))) +@interface KASCTierProgress______ : KASCBase +- (instancetype)initWithStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("init(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierProgress______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (KASCTierProgress______ *)doCopyStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("doCopy(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The end date for this tier session. The tier will be reset once this date is reached. */ +@property (readonly) NSString * _Nullable endDate __attribute__((swift_name("endDate"))); + +/** The amount of spend left in the user's current tier progress. Once they have acquired this many more amount of spend, they will be moved into the next tier. */ +@property (readonly) KASCFloat * _Nullable leftAmount __attribute__((swift_name("leftAmount"))); + +/** The amount of points left in the user's current tier progress. Once they have acquired this many more amount of points, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftPoints __attribute__((swift_name("leftPoints"))); + +/** The amount of visits left in the user's current tier progress. Once they have acquired this many more amount of visits, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftVisits __attribute__((swift_name("leftVisits"))); + +/** The name of the user's next tier level. */ +@property (readonly) NSString * _Nullable nextTierLevel __attribute__((swift_name("nextTierLevel"))); + +/** The start date for this tier session. */ +@property (readonly) NSString * _Nullable startDate __attribute__((swift_name("startDate"))); + +/** The name of the user's current tier level */ +@property (readonly) NSString * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** The name of the user's current tier level. Tiers are recalculated once per day, as such \"tier_level\" may not be completely up to date. */ +@property (readonly) NSString * _Nullable tierLevelLive __attribute__((swift_name("tierLevelLive"))); + +/** The users current tier progress in their \"tier_level\". This will be a number between 0 and 1. A tier progress of 0.5 means that the user has made 50% progress in their current tier. */ +@property (readonly) KASCFloat * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); + +/** Purchase amount between start_date and end_date. */ +@property (readonly) KASCFloat * _Nullable totalAmount __attribute__((swift_name("totalAmount"))); + +/** Purchase points between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalPoints __attribute__((swift_name("totalPoints"))); + +/** Purchase visits between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalVisits __attribute__((swift_name("totalVisits"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress______.Companion"))) +@interface KASCTierProgress______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierProgress______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile balance data. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance_____"))) +@interface KASCUserBalance_____ : KASCBase +- (instancetype)initWithPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("init(points:giftcard:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBalance_____Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile balance data. + */ +- (KASCUserBalance_____ *)doCopyPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("doCopy(points:giftcard:)"))); + +/** + * User Profile balance data. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile balance data. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile balance data. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount of store credit in the users' e-wallet. */ +@property (readonly) KASCDouble * _Nullable giftcard __attribute__((swift_name("giftcard"))); + +/** The number of points this user currently has. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + + +/** + * User Profile balance data. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance_____.Companion"))) +@interface KASCUserBalance_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile balance data. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBalance_____Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile balance data. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_________"))) +@interface KASCUserProfileDataModel_________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel_________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel_________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_________.Companion"))) +@interface KASCUserProfileDataModel_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel_________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Extra user profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude_____"))) +@interface KASCUserProfileInclude_____ : KASCBase +- (instancetype)initWithBalance:(KASCUserBalance_____ * _Nullable)balance tierLevel:(KASCTierLevel______ * _Nullable)tierLevel tierProgress:(KASCTierProgress______ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("init(balance:tierLevel:tierProgress:referralPrograms:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserProfileInclude_____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Extra user profile data + */ +- (KASCUserProfileInclude_____ *)doCopyBalance:(KASCUserBalance_____ * _Nullable)balance tierLevel:(KASCTierLevel______ * _Nullable)tierLevel tierProgress:(KASCTierProgress______ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("doCopy(balance:tierLevel:tierProgress:referralPrograms:)"))); + +/** + * Extra user profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Extra user profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Extra user profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** User Profile balance data. */ +@property (readonly) KASCUserBalance_____ * _Nullable balance __attribute__((swift_name("balance"))); + +/** A list of referral programs the user has access to. */ +@property (readonly) NSArray * _Nullable referralPrograms __attribute__((swift_name("referralPrograms"))); + +/** User's tier status. */ +@property (readonly) KASCTierLevel______ * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** User's tier progress and status. If a user's tier status is statically fixed, this will be null as they do not progress from tier to tier. */ +@property (readonly) KASCTierProgress______ * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); +@end + + +/** + * Extra user profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude_____.Companion"))) +@interface KASCUserProfileInclude_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Extra user profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileInclude_____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Extra user profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel____"))) +@interface KASCUserProfileModel____ : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel_________ * _Nullable)data included:(KASCUserProfileInclude_____ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileModel____Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileModel____ *)doCopyData:(KASCUserProfileDataModel_________ * _Nullable)data included:(KASCUserProfileInclude_____ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user profile data */ +@property (readonly) KASCUserProfileDataModel_________ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains user balance data */ +@property (readonly) KASCUserProfileInclude_____ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel____.Companion"))) +@interface KASCUserProfileModel____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileModel____Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Delete user account [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserDeleteApi"))) +@interface KASCUserDeleteApi : KASCApi + +/** + * Delete user account [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Delete user account [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserDeleteApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Delete user account + */ +- (KASCCFlow *> *)deleteUserAccount __attribute__((swift_name("deleteUserAccount()"))); +@property (readonly) KASCCFlow *> *userDeleteState __attribute__((swift_name("userDeleteState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserDeleteApi.Companion"))) +@interface KASCUserDeleteApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserDeleteApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Get a users notification settings. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GetNotificationPreferencesApi"))) +@interface KASCGetNotificationPreferencesApi : KASCApi + +/** + * Get a users notification settings. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a users notification settings. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCGetNotificationPreferencesApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a users notification settings. + */ +- (KASCCFlow *> *)getNotificationPreferences __attribute__((swift_name("getNotificationPreferences()"))); +@property (readonly) KASCCFlow *> *getNotificationPreferencesState __attribute__((swift_name("getNotificationPreferencesState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GetNotificationPreferencesApi.Companion"))) +@interface KASCGetNotificationPreferencesApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGetNotificationPreferencesApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * The business who these settings this affect. This is not required when updating notification settings. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationBusinessPayload_"))) +@interface KASCNotificationBusinessPayload_ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name __attribute__((swift_name("init(id:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCNotificationBusinessPayload_Companion *companion __attribute__((swift_name("companion"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (KASCNotificationBusinessPayload_ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:name:)"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationBusinessPayload_.Companion"))) +@interface KASCNotificationBusinessPayload_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCNotificationBusinessPayload_Companion *shared __attribute__((swift_name("shared"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsData_"))) +@interface KASCNotificationSettingsData_ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id business:(KASCNotificationBusinessPayload_ * _Nullable)business allowEmail:(KASCBoolean * _Nullable)allowEmail allowSms:(KASCBoolean * _Nullable)allowSms allowPush:(KASCBoolean * _Nullable)allowPush __attribute__((swift_name("init(id:business:allowEmail:allowSms:allowPush:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCNotificationSettingsData_Companion *companion __attribute__((swift_name("companion"))); +- (KASCNotificationSettingsData_ *)doCopyId:(NSString * _Nullable)id business:(KASCNotificationBusinessPayload_ * _Nullable)business allowEmail:(KASCBoolean * _Nullable)allowEmail allowSms:(KASCBoolean * _Nullable)allowSms allowPush:(KASCBoolean * _Nullable)allowPush __attribute__((swift_name("doCopy(id:business:allowEmail:allowSms:allowPush:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCBoolean * _Nullable allowEmail __attribute__((swift_name("allowEmail"))); +@property (readonly) KASCBoolean * _Nullable allowPush __attribute__((swift_name("allowPush"))); +@property (readonly) KASCBoolean * _Nullable allowSms __attribute__((swift_name("allowSms"))); +@property (readonly) KASCNotificationBusinessPayload_ * _Nullable business __attribute__((swift_name("business"))); + +/** The notification settings id. This is not required when updating notification settings. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsData_.Companion"))) +@interface KASCNotificationSettingsData_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCNotificationSettingsData_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsModel_"))) +@interface KASCNotificationSettingsModel_ : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCNotificationSettingsModel_Companion *companion __attribute__((swift_name("companion"))); +- (KASCNotificationSettingsModel_ *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsModel_.Companion"))) +@interface KASCNotificationSettingsModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCNotificationSettingsModel_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Unsubscribe from marketing material [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserUnsubscribeApi"))) +@interface KASCUserUnsubscribeApi : KASCApi + +/** + * Unsubscribe from marketing material [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Unsubscribe from marketing material [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserUnsubscribeApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Unsubscribe from marketing material + */ +- (KASCCFlow *> *)unsubscribeCampaignId:(NSString *)campaignId token:(NSString *)token __attribute__((swift_name("unsubscribe(campaignId:token:)"))); +@property (readonly) KASCCFlow *> *userUnsubscribeState __attribute__((swift_name("userUnsubscribeState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserUnsubscribeApi.Companion"))) +@interface KASCUserUnsubscribeApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserUnsubscribeApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Get user details for this user. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserDetailsApi"))) +@interface KASCUserDetailsApi : KASCApi + +/** + * Get user details for this user. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get user details for this user. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserDetailsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get user details for this user. + */ +- (KASCCFlow *> *)getUserDetails __attribute__((swift_name("getUserDetails()"))); +@property (readonly) KASCCFlow *> *userDetailsState __attribute__((swift_name("userDetailsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserDetailsApi.Companion"))) +@interface KASCUserDetailsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserDetailsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * User Details model class containing user details + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserDetailsModel"))) +@interface KASCUserDetailsModel : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel__________ * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserDetailsModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * User Details model class containing user details + */ +- (KASCUserDetailsModel *)doCopyData:(KASCUserProfileDataModel__________ * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * User Details model class containing user details + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Details model class containing user details + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Details model class containing user details + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user details */ +@property (readonly) KASCUserProfileDataModel__________ * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * User Details model class containing user details + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserDetailsModel.Companion"))) +@interface KASCUserDetailsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Details model class containing user details + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserDetailsModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * User Details model class containing user details + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel__________"))) +@interface KASCUserProfileDataModel__________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel__________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel__________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel__________.Companion"))) +@interface KASCUserProfileDataModel__________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel__________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get the branches of a business [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchesApi"))) +@interface KASCBranchesApi : KASCApi + +/** + * Get the branches of a business [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get the branches of a business [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCBranchesApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get the branches of a business + */ +- (KASCCFlow *> *)getBusinessBranchesBusinessId:(NSString *)businessId __attribute__((swift_name("getBusinessBranches(businessId:)"))); +@property (readonly) KASCCFlow *> *branchesState __attribute__((swift_name("branchesState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchesApi.Companion"))) +@interface KASCBranchesApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBranchesApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Branch"))) +@interface KASCBranch : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name webSite:(NSString * _Nullable)webSite phone:(KASCBranchPhone * _Nullable)phone logo:(KASCImage_______ * _Nullable)logo coverPhoto:(KASCImage_______ * _Nullable)coverPhoto address:(KASCBranchAddress * _Nullable)address __attribute__((swift_name("init(id:name:webSite:phone:logo:coverPhoto:address:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBranchCompanion *companion __attribute__((swift_name("companion"))); +- (KASCBranch *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name webSite:(NSString * _Nullable)webSite phone:(KASCBranchPhone * _Nullable)phone logo:(KASCImage_______ * _Nullable)logo coverPhoto:(KASCImage_______ * _Nullable)coverPhoto address:(KASCBranchAddress * _Nullable)address __attribute__((swift_name("doCopy(id:name:webSite:phone:logo:coverPhoto:address:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCBranchAddress * _Nullable address __attribute__((swift_name("address"))); +@property (readonly) KASCImage_______ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique ID for this branch */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage_______ * _Nullable logo __attribute__((swift_name("logo"))); + +/** The name of this branch */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@property (readonly) KASCBranchPhone * _Nullable phone __attribute__((swift_name("phone"))); + +/** The website for this branch */ +@property (readonly) NSString * _Nullable webSite __attribute__((swift_name("webSite"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Branch.Companion"))) +@interface KASCBranchCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBranchCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchAddress"))) +@interface KASCBranchAddress : KASCBase +- (instancetype)initWithFormatted:(NSString * _Nullable)formatted street:(NSString * _Nullable)street city:(NSString * _Nullable)city region:(NSString * _Nullable)region country:(NSString * _Nullable)country lat:(KASCFloat * _Nullable)lat long:(KASCFloat * _Nullable)long_ __attribute__((swift_name("init(formatted:street:city:region:country:lat:long:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBranchAddressCompanion *companion __attribute__((swift_name("companion"))); +- (KASCBranchAddress *)doCopyFormatted:(NSString * _Nullable)formatted street:(NSString * _Nullable)street city:(NSString * _Nullable)city region:(NSString * _Nullable)region country:(NSString * _Nullable)country lat:(KASCFloat * _Nullable)lat long:(KASCFloat * _Nullable)long_ __attribute__((swift_name("doCopy(formatted:street:city:region:country:lat:long:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable city __attribute__((swift_name("city"))); +@property (readonly) NSString * _Nullable country __attribute__((swift_name("country"))); +@property (readonly) NSString * _Nullable formatted __attribute__((swift_name("formatted"))); +@property (readonly) KASCFloat * _Nullable lat __attribute__((swift_name("lat"))); +@property (readonly, getter=long) KASCFloat * _Nullable long_ __attribute__((swift_name("long_"))); +@property (readonly) NSString * _Nullable region __attribute__((swift_name("region"))); +@property (readonly) NSString * _Nullable street __attribute__((swift_name("street"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchAddress.Companion"))) +@interface KASCBranchAddressCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBranchAddressCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchPhone"))) +@interface KASCBranchPhone : KASCBase +- (instancetype)initWithNumber:(NSString * _Nullable)number countryCode:(NSString * _Nullable)countryCode nationalFormat:(NSString * _Nullable)nationalFormat intlFormat:(NSString * _Nullable)intlFormat __attribute__((swift_name("init(number:countryCode:nationalFormat:intlFormat:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBranchPhoneCompanion *companion __attribute__((swift_name("companion"))); +- (KASCBranchPhone *)doCopyNumber:(NSString * _Nullable)number countryCode:(NSString * _Nullable)countryCode nationalFormat:(NSString * _Nullable)nationalFormat intlFormat:(NSString * _Nullable)intlFormat __attribute__((swift_name("doCopy(number:countryCode:nationalFormat:intlFormat:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); +@property (readonly) NSString * _Nullable intlFormat __attribute__((swift_name("intlFormat"))); +@property (readonly) NSString * _Nullable nationalFormat __attribute__((swift_name("nationalFormat"))); +@property (readonly) NSString * _Nullable number __attribute__((swift_name("number"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchPhone.Companion"))) +@interface KASCBranchPhoneCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBranchPhoneCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Business"))) +@interface KASCBusiness : KASCModel +- (instancetype)initWithData:(KASCBusinessData___ * _Nullable)data included:(KASCBusinessBranchesData * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCBusinessCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +- (KASCBusiness *)doCopyData:(KASCBusinessData___ * _Nullable)data included:(KASCBusinessBranchesData * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Details about a business */ +@property (readonly) KASCBusinessData___ * _Nullable data __attribute__((swift_name("data"))); + +/** Details about a business' branches */ +@property (readonly) KASCBusinessBranchesData * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Business.Companion"))) +@interface KASCBusinessCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessBranchesData"))) +@interface KASCBusinessBranchesData : KASCBase +- (instancetype)initWithBranches:(NSArray * _Nullable)branches __attribute__((swift_name("init(branches:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessBranchesDataCompanion *companion __attribute__((swift_name("companion"))); +- (KASCBusinessBranchesData *)doCopyBranches:(NSArray * _Nullable)branches __attribute__((swift_name("doCopy(branches:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable branches __attribute__((swift_name("branches"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessBranchesData.Companion"))) +@interface KASCBusinessBranchesDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessBranchesDataCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory___"))) +@interface KASCBusinessCategory___ : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("init(name:icon:code:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessCategory___Companion *companion __attribute__((swift_name("companion"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (KASCBusinessCategory___ *)doCopyName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("doCopy(name:icon:code:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique ategory code for this category */ +@property (readonly) NSString * _Nullable code __attribute__((swift_name("code"))); + +/** Url to this category's icon */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** Name of this category */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory___.Companion"))) +@interface KASCBusinessCategory___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessCategory___Companion *shared __attribute__((swift_name("shared"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData___"))) +@interface KASCBusinessData___ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage_______ * _Nullable)logo logoTransparentBackground:(KASCImage_______ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage_______ * _Nullable)coverPhoto category:(KASCBusinessCategory___ * _Nullable)category __attribute__((swift_name("init(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessData___Companion *companion __attribute__((swift_name("companion"))); + +/** + * Business profile data + */ +- (KASCBusinessData___ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage_______ * _Nullable)logo logoTransparentBackground:(KASCImage_______ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage_______ * _Nullable)coverPhoto category:(KASCBusinessCategory___ * _Nullable)category __attribute__((swift_name("doCopy(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))); + +/** + * Business profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** General about text for the business */ +@property (readonly) NSString * _Nullable about __attribute__((swift_name("about"))); +@property (readonly) KASCBusinessCategory___ * _Nullable category __attribute__((swift_name("category"))); + +/** Whether this is a conglomerate business. Conglomerate businesses are umbrellas for multiple business' in Kangaroo */ +@property (readonly) NSString * _Nullable conglomerate __attribute__((swift_name("conglomerate"))); +@property (readonly) KASCImage_______ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique business ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage_______ * _Nullable logo __attribute__((swift_name("logo"))); +@property (readonly) KASCImage_______ * _Nullable logoTransparentBackground __attribute__((swift_name("logoTransparentBackground"))); + +/** The manner in which this business rewards its customers. This can be by purchase amount of by visit to the store */ +@property (readonly) NSString * _Nullable loyaltyType __attribute__((swift_name("loyaltyType"))); + +/** The name of this business */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** Whether this is a white label business. White label business' don't appear in the Kangaroo Mobile Customer app, as they usually have their own app. */ +@property (readonly) NSString * _Nullable whiteLabel __attribute__((swift_name("whiteLabel"))); +@end + + +/** + * Business profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData___.Companion"))) +@interface KASCBusinessData___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessData___Companion *shared __attribute__((swift_name("shared"))); + +/** + * Business profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_______"))) +@interface KASCImage_______ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage_______Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage_______ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_______.Companion"))) +@interface KASCImage_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage_______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Scan a purchase receipt with a business [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserScanReceiptApi"))) +@interface KASCUserScanReceiptApi : KASCApi + +/** + * Scan a purchase receipt with a business [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Scan a purchase receipt with a business [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserScanReceiptApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Scan a purchase receipt with a business + */ +- (KASCCFlow *> *)scanReceiptScanReceiptRequest:(KASCScanReceiptRequest *)scanReceiptRequest __attribute__((swift_name("scanReceipt(scanReceiptRequest:)"))); + +/** + * Scan a purchase receipt with a business + * + * This method is used by the Native artifact when dealing with object body params + */ +- (KASCCFlow *> *)scanReceiptMethods:(NSDictionary *)methods __attribute__((swift_name("scanReceipt(methods:)"))); +@property (readonly) KASCCFlow *> *userScanReceiptState __attribute__((swift_name("userScanReceiptState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserScanReceiptApi.Companion"))) +@interface KASCUserScanReceiptApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserScanReceiptApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ScanReceiptRequest"))) +@interface KASCScanReceiptRequest : KASCBase +- (instancetype)initWithQrCodeInfo:(NSString *)qrCodeInfo intent:(NSString *)intent __attribute__((swift_name("init(qrCodeInfo:intent:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCScanReceiptRequestCompanion *companion __attribute__((swift_name("companion"))); +- (KASCScanReceiptRequest *)doCopyQrCodeInfo:(NSString *)qrCodeInfo intent:(NSString *)intent __attribute__((swift_name("doCopy(qrCodeInfo:intent:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *intent __attribute__((swift_name("intent"))); +@property (readonly) NSString *qrCodeInfo __attribute__((swift_name("qrCodeInfo"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ScanReceiptRequest.Companion"))) +@interface KASCScanReceiptRequestCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCScanReceiptRequestCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ScanReceiptResponseModel"))) +@interface KASCScanReceiptResponseModel : KASCModel +- (instancetype)initWithQrCodeInfo:(NSArray * _Nullable)qrCodeInfo __attribute__((swift_name("init(qrCodeInfo:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCScanReceiptResponseModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCScanReceiptResponseModel *)doCopyQrCodeInfo:(NSArray * _Nullable)qrCodeInfo __attribute__((swift_name("doCopy(qrCodeInfo:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable qrCodeInfo __attribute__((swift_name("qrCodeInfo"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ScanReceiptResponseModel.Companion"))) +@interface KASCScanReceiptResponseModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCScanReceiptResponseModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get the spin to win prizes of a business [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GetSpinToWinPrizesApi"))) +@interface KASCGetSpinToWinPrizesApi : KASCApi + +/** + * Get the spin to win prizes of a business [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get the spin to win prizes of a business [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCGetSpinToWinPrizesApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get the spin to win prizes of a business + */ +- (KASCCFlow *> *)getSpinToWinPrizesBusinessId:(NSString *)businessId __attribute__((swift_name("getSpinToWinPrizes(businessId:)"))); +@property (readonly) KASCCFlow *> *getSpinToWinPrizesState __attribute__((swift_name("getSpinToWinPrizesState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GetSpinToWinPrizesApi.Companion"))) +@interface KASCGetSpinToWinPrizesApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGetSpinToWinPrizesApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PrizeModel"))) +@interface KASCPrizeModel : KASCModel +- (instancetype)initWithFillStyle:(NSString * _Nullable)fillStyle text:(NSString * _Nullable)text desc:(NSString * _Nullable)desc prizeId:(KASCInt * _Nullable)prizeId __attribute__((swift_name("init(fillStyle:text:desc:prizeId:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCPrizeModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCPrizeModel *)doCopyFillStyle:(NSString * _Nullable)fillStyle text:(NSString * _Nullable)text desc:(NSString * _Nullable)desc prizeId:(KASCInt * _Nullable)prizeId __attribute__((swift_name("doCopy(fillStyle:text:desc:prizeId:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** prize description */ +@property (readonly) NSString * _Nullable desc __attribute__((swift_name("desc"))); + +/** fill style color */ +@property (readonly) NSString * _Nullable fillStyle __attribute__((swift_name("fillStyle"))); + +/** prize id */ +@property (readonly) KASCInt * _Nullable prizeId __attribute__((swift_name("prizeId"))); + +/** prize name */ +@property (readonly) NSString * _Nullable text __attribute__((swift_name("text"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PrizeModel.Companion"))) +@interface KASCPrizeModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPrizeModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SpinToWinPrizesData"))) +@interface KASCSpinToWinPrizesData : KASCBase +- (instancetype)initWithSpinWinId:(KASCInt * _Nullable)spinWinId spinPrizes:(NSArray * _Nullable)spinPrizes __attribute__((swift_name("init(spinWinId:spinPrizes:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCSpinToWinPrizesDataCompanion *companion __attribute__((swift_name("companion"))); +- (KASCSpinToWinPrizesData *)doCopySpinWinId:(KASCInt * _Nullable)spinWinId spinPrizes:(NSArray * _Nullable)spinPrizes __attribute__((swift_name("doCopy(spinWinId:spinPrizes:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** List of prizes */ +@property (readonly) NSArray * _Nullable spinPrizes __attribute__((swift_name("spinPrizes"))); + +/** spin to win id */ +@property (readonly) KASCInt * _Nullable spinWinId __attribute__((swift_name("spinWinId"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SpinToWinPrizesData.Companion"))) +@interface KASCSpinToWinPrizesDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSpinToWinPrizesDataCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SpinToWinPrizesModel"))) +@interface KASCSpinToWinPrizesModel : KASCModel +- (instancetype)initWithData:(KASCSpinToWinPrizesData * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCSpinToWinPrizesModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCSpinToWinPrizesModel *)doCopyData:(KASCSpinToWinPrizesData * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains a list of all coupons available to this user */ +@property (readonly) KASCSpinToWinPrizesData * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SpinToWinPrizesModel.Companion"))) +@interface KASCSpinToWinPrizesModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSpinToWinPrizesModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Purchase a gift card [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPurchaseApi"))) +@interface KASCGiftCardPurchaseApi : KASCApi + +/** + * Purchase a gift card [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Purchase a gift card [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCGiftCardPurchaseApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Purchase a gift card + */ +- (KASCCFlow *> *)purchaseGiftCardPurchaseGiftCardRequest:(KASCGiftCardPurchaseRequest *)purchaseGiftCardRequest __attribute__((swift_name("purchaseGiftCard(purchaseGiftCardRequest:)"))); + +/** + * Purchase a gift card + * + * This method is used by the Native artifact when dealing with object body params + */ +- (KASCCFlow *> *)purchaseGiftCardMethods:(NSDictionary *)methods __attribute__((swift_name("purchaseGiftCard(methods:)"))); +@property (readonly) KASCCFlow *> *giftCardPurchaseState __attribute__((swift_name("giftCardPurchaseState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPurchaseApi.Companion"))) +@interface KASCGiftCardPurchaseApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardPurchaseApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPayPalPayment"))) +@interface KASCGiftCardPayPalPayment : KASCBase +- (instancetype)initWithPaymentId:(NSString *)paymentId payerId:(NSString *)payerId token:(NSString *)token success:(KASCBoolean * _Nullable)success __attribute__((swift_name("init(paymentId:payerId:token:success:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCGiftCardPayPalPaymentCompanion *companion __attribute__((swift_name("companion"))); +- (KASCGiftCardPayPalPayment *)doCopyPaymentId:(NSString *)paymentId payerId:(NSString *)payerId token:(NSString *)token success:(KASCBoolean * _Nullable)success __attribute__((swift_name("doCopy(paymentId:payerId:token:success:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *payerId __attribute__((swift_name("payerId"))); +@property (readonly) NSString *paymentId __attribute__((swift_name("paymentId"))); +@property (readonly) KASCBoolean * _Nullable success __attribute__((swift_name("success"))); +@property (readonly) NSString *token __attribute__((swift_name("token"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPayPalPayment.Companion"))) +@interface KASCGiftCardPayPalPaymentCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardPayPalPaymentCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPayPalPaymentResponseData"))) +@interface KASCGiftCardPayPalPaymentResponseData : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id provider:(NSString * _Nullable)provider giftcard:(KASCGiftCardPurchaseResponseGiftCardData * _Nullable)giftcard balance:(KASCUserBalance______ * _Nullable)balance __attribute__((swift_name("init(id:provider:giftcard:balance:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCGiftCardPayPalPaymentResponseDataCompanion *companion __attribute__((swift_name("companion"))); +- (KASCGiftCardPayPalPaymentResponseData *)doCopyId:(NSString * _Nullable)id provider:(NSString * _Nullable)provider giftcard:(KASCGiftCardPurchaseResponseGiftCardData * _Nullable)giftcard balance:(KASCUserBalance______ * _Nullable)balance __attribute__((swift_name("doCopy(id:provider:giftcard:balance:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCUserBalance______ * _Nullable balance __attribute__((swift_name("balance"))); +@property (readonly) KASCGiftCardPurchaseResponseGiftCardData * _Nullable giftcard __attribute__((swift_name("giftcard"))); +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSString * _Nullable provider __attribute__((swift_name("provider"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPayPalPaymentResponseData.Companion"))) +@interface KASCGiftCardPayPalPaymentResponseDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardPayPalPaymentResponseDataCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPayPalPaymentResponseModel"))) +@interface KASCGiftCardPayPalPaymentResponseModel : KASCModel +- (instancetype)initWithData:(KASCGiftCardPayPalPaymentResponseData * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCGiftCardPayPalPaymentResponseModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCGiftCardPayPalPaymentResponseModel *)doCopyData:(KASCGiftCardPayPalPaymentResponseData * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCGiftCardPayPalPaymentResponseData * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPayPalPaymentResponseModel.Companion"))) +@interface KASCGiftCardPayPalPaymentResponseModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardPayPalPaymentResponseModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPurchaseRequest"))) +@interface KASCGiftCardPurchaseRequest : KASCBase +- (instancetype)initWithIntent:(NSString *)intent provider:(NSString *)provider giftcardId:(int32_t)giftcardId paypalPayment:(KASCGiftCardPayPalPayment *)paypalPayment __attribute__((swift_name("init(intent:provider:giftcardId:paypalPayment:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCGiftCardPurchaseRequestCompanion *companion __attribute__((swift_name("companion"))); +- (KASCGiftCardPurchaseRequest *)doCopyIntent:(NSString *)intent provider:(NSString *)provider giftcardId:(int32_t)giftcardId paypalPayment:(KASCGiftCardPayPalPayment *)paypalPayment __attribute__((swift_name("doCopy(intent:provider:giftcardId:paypalPayment:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) int32_t giftcardId __attribute__((swift_name("giftcardId"))); +@property (readonly) NSString *intent __attribute__((swift_name("intent"))); +@property (readonly) KASCGiftCardPayPalPayment *paypalPayment __attribute__((swift_name("paypalPayment"))); +@property (readonly) NSString *provider __attribute__((swift_name("provider"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPurchaseRequest.Companion"))) +@interface KASCGiftCardPurchaseRequestCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardPurchaseRequestCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPurchaseResponseGiftCardData"))) +@interface KASCGiftCardPurchaseResponseGiftCardData : KASCBase +- (instancetype)initWithId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title price:(KASCDouble * _Nullable)price currency:(NSString * _Nullable)currency quantity:(NSString * _Nullable)quantity __attribute__((swift_name("init(id:title:price:currency:quantity:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCGiftCardPurchaseResponseGiftCardDataCompanion *companion __attribute__((swift_name("companion"))); +- (KASCGiftCardPurchaseResponseGiftCardData *)doCopyId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title price:(KASCDouble * _Nullable)price currency:(NSString * _Nullable)currency quantity:(NSString * _Nullable)quantity __attribute__((swift_name("doCopy(id:title:price:currency:quantity:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable currency __attribute__((swift_name("currency"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCDouble * _Nullable price __attribute__((swift_name("price"))); +@property (readonly) NSString * _Nullable quantity __attribute__((swift_name("quantity"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardPurchaseResponseGiftCardData.Companion"))) +@interface KASCGiftCardPurchaseResponseGiftCardDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardPurchaseResponseGiftCardDataCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile balance data. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance______"))) +@interface KASCUserBalance______ : KASCBase +- (instancetype)initWithPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("init(points:giftcard:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBalance______Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile balance data. + */ +- (KASCUserBalance______ *)doCopyPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("doCopy(points:giftcard:)"))); + +/** + * User Profile balance data. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile balance data. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile balance data. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount of store credit in the users' e-wallet. */ +@property (readonly) KASCDouble * _Nullable giftcard __attribute__((swift_name("giftcard"))); + +/** The number of points this user currently has. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + + +/** + * User Profile balance data. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance______.Companion"))) +@interface KASCUserBalance______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile balance data. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBalance______Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile balance data. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Acquires specific business banners. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessBannersApi"))) +@interface KASCUserBusinessBannersApi : KASCApi + +/** + * Acquires specific business banners. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Acquires specific business banners. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserBusinessBannersApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Acquires specific business banners. + */ +- (KASCCFlow *> *)getUserBusinessBannersBusinessId:(NSString *)businessId __attribute__((swift_name("getUserBusinessBanners(businessId:)"))); +@property (readonly) KASCCFlow *> *userBusinessBannersState __attribute__((swift_name("userBusinessBannersState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessBannersApi.Companion"))) +@interface KASCUserBusinessBannersApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessBannersApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * A business banner. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Banner_"))) +@interface KASCBanner_ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id type:(KASCInt * _Nullable)type imagePath:(NSString * _Nullable)imagePath link:(NSString * _Nullable)link createdAt:(NSString * _Nullable)createdAt publishedAt:(NSString * _Nullable)publishedAt expiresAt:(NSString * _Nullable)expiresAt language:(KASCLanguage___________________ * _Nullable)language __attribute__((swift_name("init(id:type:imagePath:link:createdAt:publishedAt:expiresAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBanner_Companion *companion __attribute__((swift_name("companion"))); + +/** + * A business banner. + */ +- (KASCBanner_ *)doCopyId:(KASCLong * _Nullable)id type:(KASCInt * _Nullable)type imagePath:(NSString * _Nullable)imagePath link:(NSString * _Nullable)link createdAt:(NSString * _Nullable)createdAt publishedAt:(NSString * _Nullable)publishedAt expiresAt:(NSString * _Nullable)expiresAt language:(KASCLanguage___________________ * _Nullable)language __attribute__((swift_name("doCopy(id:type:imagePath:link:createdAt:publishedAt:expiresAt:language:)"))); + +/** + * A business banner. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A business banner. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A business banner. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); + +/** Unique banner id. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable imagePath __attribute__((swift_name("imagePath"))); +@property (readonly) KASCLanguage___________________ * _Nullable language __attribute__((swift_name("language"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable publishedAt __attribute__((swift_name("publishedAt"))); + +/** The banner type. */ +@property (readonly) KASCInt * _Nullable type __attribute__((swift_name("type"))); +@end + + +/** + * A business banner. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Banner_.Companion"))) +@interface KASCBanner_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A business banner. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBanner_Companion *shared __attribute__((swift_name("shared"))); + +/** + * A business banner. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory____"))) +@interface KASCBusinessCategory____ : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("init(name:icon:code:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessCategory____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (KASCBusinessCategory____ *)doCopyName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("doCopy(name:icon:code:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique ategory code for this category */ +@property (readonly) NSString * _Nullable code __attribute__((swift_name("code"))); + +/** Url to this category's icon */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** Name of this category */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory____.Companion"))) +@interface KASCBusinessCategory____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessCategory____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData____"))) +@interface KASCBusinessData____ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage________ * _Nullable)logo logoTransparentBackground:(KASCImage________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage________ * _Nullable)coverPhoto category:(KASCBusinessCategory____ * _Nullable)category __attribute__((swift_name("init(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessData____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Business profile data + */ +- (KASCBusinessData____ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage________ * _Nullable)logo logoTransparentBackground:(KASCImage________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage________ * _Nullable)coverPhoto category:(KASCBusinessCategory____ * _Nullable)category __attribute__((swift_name("doCopy(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))); + +/** + * Business profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** General about text for the business */ +@property (readonly) NSString * _Nullable about __attribute__((swift_name("about"))); +@property (readonly) KASCBusinessCategory____ * _Nullable category __attribute__((swift_name("category"))); + +/** Whether this is a conglomerate business. Conglomerate businesses are umbrellas for multiple business' in Kangaroo */ +@property (readonly) NSString * _Nullable conglomerate __attribute__((swift_name("conglomerate"))); +@property (readonly) KASCImage________ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique business ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage________ * _Nullable logo __attribute__((swift_name("logo"))); +@property (readonly) KASCImage________ * _Nullable logoTransparentBackground __attribute__((swift_name("logoTransparentBackground"))); + +/** The manner in which this business rewards its customers. This can be by purchase amount of by visit to the store */ +@property (readonly) NSString * _Nullable loyaltyType __attribute__((swift_name("loyaltyType"))); + +/** The name of this business */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** Whether this is a white label business. White label business' don't appear in the Kangaroo Mobile Customer app, as they usually have their own app. */ +@property (readonly) NSString * _Nullable whiteLabel __attribute__((swift_name("whiteLabel"))); +@end + + +/** + * Business profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData____.Companion"))) +@interface KASCBusinessData____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessData____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Business profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image________"))) +@interface KASCImage________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image________.Companion"))) +@interface KASCImage________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language___________________"))) +@interface KASCLanguage___________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage___________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage___________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language___________________.Companion"))) +@interface KASCLanguage___________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage___________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessBannersIncluded"))) +@interface KASCUserBusinessBannersIncluded : KASCBase +- (instancetype)initWithBanners:(NSArray * _Nullable)banners __attribute__((swift_name("init(banners:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBusinessBannersIncludedCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserBusinessBannersIncluded *)doCopyBanners:(NSArray * _Nullable)banners __attribute__((swift_name("doCopy(banners:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable banners __attribute__((swift_name("banners"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessBannersIncluded.Companion"))) +@interface KASCUserBusinessBannersIncludedCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessBannersIncludedCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business banners. Used to display promotional material. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessBannersModel"))) +@interface KASCUserBusinessBannersModel : KASCModel +- (instancetype)initWithData:(KASCBusinessData____ * _Nullable)data included:(KASCUserBusinessBannersIncluded * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserBusinessBannersModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Business banners. Used to display promotional material. + */ +- (KASCUserBusinessBannersModel *)doCopyData:(KASCBusinessData____ * _Nullable)data included:(KASCUserBusinessBannersIncluded * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * Business banners. Used to display promotional material. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business banners. Used to display promotional material. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business banners. Used to display promotional material. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains business data */ +@property (readonly) KASCBusinessData____ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains all A la carte items */ +@property (readonly) KASCUserBusinessBannersIncluded * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * Business banners. Used to display promotional material. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessBannersModel.Companion"))) +@interface KASCUserBusinessBannersModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business banners. Used to display promotional material. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessBannersModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Business banners. Used to display promotional material. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of offers available to this user. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserOffersApi"))) +@interface KASCUserOffersApi : KASCApi + +/** + * Get a list of offers available to this user. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of offers available to this user. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserOffersApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of offers available to this user. + */ +- (KASCCFlow *> *)getUserOffers __attribute__((swift_name("getUserOffers()"))); +@property (readonly) KASCCFlow *> *userOffersState __attribute__((swift_name("userOffersState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserOffersApi.Companion"))) +@interface KASCUserOffersApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserOffersApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_________"))) +@interface KASCImage_________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage_________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage_________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_________.Companion"))) +@interface KASCImage_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage_________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language____________________"))) +@interface KASCLanguage____________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage____________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage____________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language____________________.Companion"))) +@interface KASCLanguage____________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage____________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction__"))) +@interface KASCOfferAction__ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferAction__Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferAction__ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction__.Companion"))) +@interface KASCOfferAction__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferAction__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel__"))) +@interface KASCOfferModel__ : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCOfferModel__Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferModel__ *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this offer. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** Whether this offer must be claimed on a mobile app before being used in store. */ +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The offer description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this offer. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isCouponRedeemed __attribute__((swift_name("isCouponRedeemed"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this offer. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** The maximum purchase amount for this offer to be applied. */ +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); + +/** The minimum purchase amount for this offer to be applied */ +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); + +/** The multiplication factor of this offer. This only applies to Point Multiplier offers. */ +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this offer ever expires or not. If false, this offer is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this offer into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); + +/** The amount of points required for this offer to be applied. Only used for Convertible Coupons */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this offer */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this offer. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The offer title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This can be a free product, dollar based discount, percentage based discount, point multiplier, bonus points, and free shipping. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel__.Companion"))) +@interface KASCOfferModel__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferModel__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this offer. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation__"))) +@interface KASCOfferTranslation__ : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage____________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferTranslation__Companion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this offer. + */ +- (KASCOfferTranslation__ *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage____________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))); + +/** + * A language translation of this offer. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this offer. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this offer. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** where is this coupon available at. */ +@property (readonly) NSString * _Nullable couponAvailableAt __attribute__((swift_name("couponAvailableAt"))); + +/** The translated coupon description. */ +@property (readonly) NSString * _Nullable couponDescription __attribute__((swift_name("couponDescription"))); + +/** The language appropriate link of this coupon. */ +@property (readonly) NSString * _Nullable couponLink __attribute__((swift_name("couponLink"))); + +/** The translated coupon terms and conditions. */ +@property (readonly) NSString * _Nullable couponTermsConditions __attribute__((swift_name("couponTermsConditions"))); + +/** The translated coupon title. */ +@property (readonly) NSString * _Nullable couponTitle __attribute__((swift_name("couponTitle"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage____________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated offer description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this offer. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated offer terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated offer title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this offer. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation__.Companion"))) +@interface KASCOfferTranslation__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this offer. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferTranslation__Companion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this offer. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserOffersModel"))) +@interface KASCUserOffersModel : KASCModel +- (instancetype)initWithData:(NSArray *)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserOffersModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserOffersModel *)doCopyData:(NSArray *)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of all offers available to this user */ +@property (readonly) NSArray *data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserOffersModel.Companion"))) +@interface KASCUserOffersModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserOffersModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * update the last business chosen by the user in the conglomerate feature [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UpdateDefaultBusinessIdApi"))) +@interface KASCUpdateDefaultBusinessIdApi : KASCApi + +/** + * update the last business chosen by the user in the conglomerate feature [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * update the last business chosen by the user in the conglomerate feature [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUpdateDefaultBusinessIdApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * update the last business chosen by the user in the conglomerate feature + */ +- (KASCCFlow *> *)updateDefaultBusinessIdBusinessId:(NSString *)businessId defaultBusinessId:(NSString *)defaultBusinessId __attribute__((swift_name("updateDefaultBusinessId(businessId:defaultBusinessId:)"))); +@property (readonly) KASCCFlow *> *updateDefaultBusinessIdState __attribute__((swift_name("updateDefaultBusinessIdState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UpdateDefaultBusinessIdApi.Companion"))) +@interface KASCUpdateDefaultBusinessIdApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUpdateDefaultBusinessIdApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Default business chosen by the user + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("DefaultBusiness"))) +@interface KASCDefaultBusiness : KASCModel +- (instancetype)initWithData:(KASCDefaultBusinessData * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCDefaultBusinessCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Default business chosen by the user + */ +- (KASCDefaultBusiness *)doCopyData:(KASCDefaultBusinessData * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * Default business chosen by the user + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Default business chosen by the user + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Default business chosen by the user + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Details about the default business */ +@property (readonly) KASCDefaultBusinessData * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * Default business chosen by the user + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("DefaultBusiness.Companion"))) +@interface KASCDefaultBusinessCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Default business chosen by the user + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCDefaultBusinessCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Default business chosen by the user + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Default Business id data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("DefaultBusinessData"))) +@interface KASCDefaultBusinessData : KASCBase +- (instancetype)initWithDefaultBranchId:(NSString * _Nullable)defaultBranchId defaultBusinessId:(NSString * _Nullable)defaultBusinessId __attribute__((swift_name("init(defaultBranchId:defaultBusinessId:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCDefaultBusinessDataCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Default Business id data + */ +- (KASCDefaultBusinessData *)doCopyDefaultBranchId:(NSString * _Nullable)defaultBranchId defaultBusinessId:(NSString * _Nullable)defaultBusinessId __attribute__((swift_name("doCopy(defaultBranchId:defaultBusinessId:)"))); + +/** + * Default Business id data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Default Business id data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Default Business id data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique branch Id */ +@property (readonly) NSString * _Nullable defaultBranchId __attribute__((swift_name("defaultBranchId"))); + +/** Unique business Id */ +@property (readonly) NSString * _Nullable defaultBusinessId __attribute__((swift_name("defaultBusinessId"))); +@end + + +/** + * Default Business id data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("DefaultBusinessData.Companion"))) +@interface KASCDefaultBusinessDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Default Business id data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCDefaultBusinessDataCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Default Business id data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Request a PIN reset. Either a phone number or email address is required If successful, a verification code will be sent by either email or SMS message. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserPinResetRequestApi"))) +@interface KASCUserPinResetRequestApi : KASCApi + +/** + * Request a PIN reset. Either a phone number or email address is required If successful, a verification code will be sent by either email or SMS message. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Request a PIN reset. Either a phone number or email address is required If successful, a verification code will be sent by either email or SMS message. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserPinResetRequestApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Request a PIN reset. Either a phone number or email address is required If successful, a verification code will be sent by either email or SMS message. + */ +- (KASCCFlow *> *)requestPinResetMode:(NSString *)mode email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone countryCode:(NSString * _Nullable)countryCode __attribute__((swift_name("requestPinReset(mode:email:phone:countryCode:)"))); +@property (readonly) KASCCFlow *> *userPinResetRequestState __attribute__((swift_name("userPinResetRequestState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserPinResetRequestApi.Companion"))) +@interface KASCUserPinResetRequestApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserPinResetRequestApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * User PIN reset request status + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserPinResetRequest"))) +@interface KASCUserPinResetRequest : KASCModel +- (instancetype)initWithStatusCode:(int32_t)statusCode message:(NSString *)message description:(NSString *)description __attribute__((swift_name("init(statusCode:message:description:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserPinResetRequestCompanion *companion __attribute__((swift_name("companion"))); + +/** + * User PIN reset request status + */ +- (KASCUserPinResetRequest *)doCopyStatusCode:(int32_t)statusCode message:(NSString *)message description:(NSString *)description __attribute__((swift_name("doCopy(statusCode:message:description:)"))); + +/** + * User PIN reset request status + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User PIN reset request status + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User PIN reset request status + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A description of the pin reset request */ +@property (readonly) NSString *description_ __attribute__((swift_name("description_"))); + +/** The message and status returned by the pin reset request */ +@property (readonly) NSString *message __attribute__((swift_name("message"))); + +/** The response code for the pin reset request. Anything within the 200 range indicates a success */ +@property (readonly) int32_t statusCode __attribute__((swift_name("statusCode"))); +@end + + +/** + * User PIN reset request status + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserPinResetRequest.Companion"))) +@interface KASCUserPinResetRequestCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User PIN reset request status + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserPinResetRequestCompanion *shared __attribute__((swift_name("shared"))); + +/** + * User PIN reset request status + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Claim an offer. Once it has been claimed it will be available to be used towards a purchase. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ClaimOfferApi"))) +@interface KASCClaimOfferApi : KASCApi + +/** + * Claim an offer. Once it has been claimed it will be available to be used towards a purchase. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Claim an offer. Once it has been claimed it will be available to be used towards a purchase. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCClaimOfferApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Claim an offer. Once it has been claimed it will be available to be used towards a purchase. + */ +- (KASCCFlow *> *)claimOfferOfferId:(int32_t)offerId customerId:(NSString *)customerId __attribute__((swift_name("claimOffer(offerId:customerId:)"))); +@property (readonly) KASCCFlow *> *claimOfferState __attribute__((swift_name("claimOfferState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ClaimOfferApi.Companion"))) +@interface KASCClaimOfferApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCClaimOfferApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ClaimedOfferModel"))) +@interface KASCClaimedOfferModel : KASCModel +- (instancetype)initWithData:(KASCOfferModel___ * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCClaimedOfferModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCClaimedOfferModel *)doCopyData:(KASCOfferModel___ * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCOfferModel___ * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ClaimedOfferModel.Companion"))) +@interface KASCClaimedOfferModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCClaimedOfferModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image__________"))) +@interface KASCImage__________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage__________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage__________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image__________.Companion"))) +@interface KASCImage__________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage__________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_____________________"))) +@interface KASCLanguage_____________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_____________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_____________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_____________________.Companion"))) +@interface KASCLanguage_____________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_____________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction___"))) +@interface KASCOfferAction___ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferAction___Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferAction___ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction___.Companion"))) +@interface KASCOfferAction___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferAction___Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel___"))) +@interface KASCOfferModel___ : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCOfferModel___Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferModel___ *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this offer. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** Whether this offer must be claimed on a mobile app before being used in store. */ +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The offer description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this offer. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isCouponRedeemed __attribute__((swift_name("isCouponRedeemed"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this offer. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** The maximum purchase amount for this offer to be applied. */ +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); + +/** The minimum purchase amount for this offer to be applied */ +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); + +/** The multiplication factor of this offer. This only applies to Point Multiplier offers. */ +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this offer ever expires or not. If false, this offer is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this offer into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); + +/** The amount of points required for this offer to be applied. Only used for Convertible Coupons */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this offer */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this offer. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The offer title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This can be a free product, dollar based discount, percentage based discount, point multiplier, bonus points, and free shipping. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel___.Companion"))) +@interface KASCOfferModel___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferModel___Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this offer. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation___"))) +@interface KASCOfferTranslation___ : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage_____________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferTranslation___Companion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this offer. + */ +- (KASCOfferTranslation___ *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage_____________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))); + +/** + * A language translation of this offer. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this offer. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this offer. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** where is this coupon available at. */ +@property (readonly) NSString * _Nullable couponAvailableAt __attribute__((swift_name("couponAvailableAt"))); + +/** The translated coupon description. */ +@property (readonly) NSString * _Nullable couponDescription __attribute__((swift_name("couponDescription"))); + +/** The language appropriate link of this coupon. */ +@property (readonly) NSString * _Nullable couponLink __attribute__((swift_name("couponLink"))); + +/** The translated coupon terms and conditions. */ +@property (readonly) NSString * _Nullable couponTermsConditions __attribute__((swift_name("couponTermsConditions"))); + +/** The translated coupon title. */ +@property (readonly) NSString * _Nullable couponTitle __attribute__((swift_name("couponTitle"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_____________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated offer description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this offer. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated offer terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated offer title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this offer. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation___.Companion"))) +@interface KASCOfferTranslation___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this offer. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferTranslation___Companion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this offer. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get transaction history this user. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserTransactionHistoryApi"))) +@interface KASCUserTransactionHistoryApi : KASCApi + +/** + * Get transaction history this user. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get transaction history this user. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserTransactionHistoryApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get transaction history this user. + */ +- (KASCCFlow *> *)getUserTransactionHistory __attribute__((swift_name("getUserTransactionHistory()"))); +@property (readonly) KASCCFlow *> *userTransactionHistoryState __attribute__((swift_name("userTransactionHistoryState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserTransactionHistoryApi.Companion"))) +@interface KASCUserTransactionHistoryApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserTransactionHistoryApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Transaction model containting transaction details + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Transaction"))) +@interface KASCTransaction : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id amount:(KASCDouble * _Nullable)amount points:(KASCDouble * _Nullable)points name:(NSString * _Nullable)name transactionType:(KASCInt * _Nullable)transactionType createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt __attribute__((swift_name("init(id:amount:points:name:transactionType:createdAt:updatedAt:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransactionCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Transaction model containting transaction details + */ +- (KASCTransaction *)doCopyId:(KASCLong * _Nullable)id amount:(KASCDouble * _Nullable)amount points:(KASCDouble * _Nullable)points name:(NSString * _Nullable)name transactionType:(KASCInt * _Nullable)transactionType createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt __attribute__((swift_name("doCopy(id:amount:points:name:transactionType:createdAt:updatedAt:)"))); + +/** + * Transaction model containting transaction details + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Transaction model containting transaction details + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Transaction model containting transaction details + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount in $ for this transaction. */ +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); + +/** Date the transaction was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Unique transaction ID. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** The transaction label. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount in points for this transaction. */ +@property (readonly) KASCDouble * _Nullable points __attribute__((swift_name("points"))); + +/** The transaction type ID. */ +@property (readonly) KASCInt * _Nullable transactionType __attribute__((swift_name("transactionType"))); + +/** Date the transaction was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * Transaction model containting transaction details + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Transaction.Companion"))) +@interface KASCTransactionCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Transaction model containting transaction details + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransactionCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Transaction model containting transaction details + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserTransactionHistoryModel"))) +@interface KASCUserTransactionHistoryModel : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserTransactionHistoryModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserTransactionHistoryModel *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains user transaction history. */ +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserTransactionHistoryModel.Companion"))) +@interface KASCUserTransactionHistoryModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserTransactionHistoryModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of social media links for this business [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaLinksApi"))) +@interface KASCSocialMediaLinksApi : KASCApi + +/** + * Get a list of social media links for this business [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of social media links for this business [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCSocialMediaLinksApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of social media links for this business + */ +- (KASCCFlow *> *)getSocialMediaLinks __attribute__((swift_name("getSocialMediaLinks()"))); +@property (readonly) KASCCFlow *> *socialMediaLinksState __attribute__((swift_name("socialMediaLinksState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaLinksApi.Companion"))) +@interface KASCSocialMediaLinksApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSocialMediaLinksApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessActionModel_"))) +@interface KASCBusinessActionModel_ : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id points:(KASCLong * _Nullable)points actionId:(KASCInt * _Nullable)actionId __attribute__((swift_name("init(id:points:actionId:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCBusinessActionModel_Companion *companion __attribute__((swift_name("companion"))); +- (KASCBusinessActionModel_ *)doCopyId:(KASCInt * _Nullable)id points:(KASCLong * _Nullable)points actionId:(KASCInt * _Nullable)actionId __attribute__((swift_name("doCopy(id:points:actionId:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCInt * _Nullable actionId __attribute__((swift_name("actionId"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessActionModel_.Companion"))) +@interface KASCBusinessActionModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessActionModel_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaLinksIncluded_"))) +@interface KASCSocialMediaLinksIncluded_ : KASCBase +- (instancetype)initWithSocialMedia:(NSArray * _Nullable)socialMedia __attribute__((swift_name("init(socialMedia:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCSocialMediaLinksIncluded_Companion *companion __attribute__((swift_name("companion"))); +- (KASCSocialMediaLinksIncluded_ *)doCopySocialMedia:(NSArray * _Nullable)socialMedia __attribute__((swift_name("doCopy(socialMedia:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable socialMedia __attribute__((swift_name("socialMedia"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaLinksIncluded_.Companion"))) +@interface KASCSocialMediaLinksIncluded_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSocialMediaLinksIncluded_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Social media links for this business + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaLinksModel_"))) +@interface KASCSocialMediaLinksModel_ : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel___________ * _Nullable)data included:(KASCSocialMediaLinksIncluded_ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCSocialMediaLinksModel_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Social media links for this business + */ +- (KASCSocialMediaLinksModel_ *)doCopyData:(KASCUserProfileDataModel___________ * _Nullable)data included:(KASCSocialMediaLinksIncluded_ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * Social media links for this business + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Social media links for this business + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Social media links for this business + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user data */ +@property (readonly) KASCUserProfileDataModel___________ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains social media links */ +@property (readonly) KASCSocialMediaLinksIncluded_ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * Social media links for this business + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaLinksModel_.Companion"))) +@interface KASCSocialMediaLinksModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Social media links for this business + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSocialMediaLinksModel_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Social media links for this business + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaModel_"))) +@interface KASCSocialMediaModel_ : KASCModel +- (instancetype)initWithIcon:(NSString * _Nullable)icon url:(NSString * _Nullable)url businessAction:(KASCBusinessActionModel_ * _Nullable)businessAction userActionCompleted:(KASCBoolean * _Nullable)userActionCompleted __attribute__((swift_name("init(icon:url:businessAction:userActionCompleted:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCSocialMediaModel_Companion *companion __attribute__((swift_name("companion"))); +- (KASCSocialMediaModel_ *)doCopyIcon:(NSString * _Nullable)icon url:(NSString * _Nullable)url businessAction:(KASCBusinessActionModel_ * _Nullable)businessAction userActionCompleted:(KASCBoolean * _Nullable)userActionCompleted __attribute__((swift_name("doCopy(icon:url:businessAction:userActionCompleted:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCBusinessActionModel_ * _Nullable businessAction __attribute__((swift_name("businessAction"))); +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); +@property (readonly) NSString * _Nullable url __attribute__((swift_name("url"))); +@property (readonly) KASCBoolean * _Nullable userActionCompleted __attribute__((swift_name("userActionCompleted"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("SocialMediaModel_.Companion"))) +@interface KASCSocialMediaModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCSocialMediaModel_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel___________"))) +@interface KASCUserProfileDataModel___________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel___________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel___________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel___________.Companion"))) +@interface KASCUserProfileDataModel___________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel___________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get user products list [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProductsApi"))) +@interface KASCUserProductsApi : KASCApi + +/** + * Get user products list [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get user products list [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserProductsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get user products list + */ +- (KASCCFlow *> *)getUserProducts __attribute__((swift_name("getUserProducts()"))); +@property (readonly) KASCCFlow *> *userProductsState __attribute__((swift_name("userProductsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProductsApi.Companion"))) +@interface KASCUserProductsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProductsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images____"))) +@interface KASCImages____ : KASCBase +- (instancetype)initWithPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(path:large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImages____Companion *companion __attribute__((swift_name("companion"))); +- (KASCImages____ *)doCopyPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(path:large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable path __attribute__((swift_name("path"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images____.Companion"))) +@interface KASCImages____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImages____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language______________________"))) +@interface KASCLanguage______________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage______________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage______________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language______________________.Companion"))) +@interface KASCLanguage______________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage______________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages____"))) +@interface KASCLanguages____ : KASCBase +- (instancetype)initWithLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage______________________ * _Nullable)language __attribute__((swift_name("init(languageId:title:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguages____Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguages____ *)doCopyLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage______________________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCLanguage______________________ * _Nullable language __attribute__((swift_name("language"))); +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages____.Companion"))) +@interface KASCLanguages____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguages____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product____"))) +@interface KASCProduct____ : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("init(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCProduct____Companion *companion __attribute__((swift_name("companion"))); +- (KASCProduct____ *)doCopyId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("doCopy(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCFloat * _Nullable actualPrice __attribute__((swift_name("actualPrice"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) NSArray * _Nullable productLanguages __attribute__((swift_name("productLanguages"))); +@property (readonly) NSString * _Nullable productSku __attribute__((swift_name("productSku"))); +@property (readonly) KASCFloat * _Nullable realPrice __attribute__((swift_name("realPrice"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product____.Companion"))) +@interface KASCProduct____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCProduct____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProductsIncluded"))) +@interface KASCUserProductsIncluded : KASCBase +- (instancetype)initWithProducts:(NSArray * _Nullable)products __attribute__((swift_name("init(products:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserProductsIncludedCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserProductsIncluded *)doCopyProducts:(NSArray * _Nullable)products __attribute__((swift_name("doCopy(products:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable products __attribute__((swift_name("products"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProductsIncluded.Companion"))) +@interface KASCUserProductsIncludedCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProductsIncludedCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Product model class containing user product list + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProductsModel"))) +@interface KASCUserProductsModel : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel____________ * _Nullable)data included:(KASCUserProductsIncluded * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProductsModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * User Product model class containing user product list + */ +- (KASCUserProductsModel *)doCopyData:(KASCUserProfileDataModel____________ * _Nullable)data included:(KASCUserProductsIncluded * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Product model class containing user product list + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Product model class containing user product list + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Product model class containing user product list + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user data */ +@property (readonly) KASCUserProfileDataModel____________ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains products available to this user */ +@property (readonly) KASCUserProductsIncluded * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Product model class containing user product list + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProductsModel.Companion"))) +@interface KASCUserProductsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Product model class containing user product list + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProductsModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * User Product model class containing user product list + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel____________"))) +@interface KASCUserProfileDataModel____________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel____________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel____________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel____________.Companion"))) +@interface KASCUserProfileDataModel____________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel____________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Register a new user. Either a phone number or an email address is required. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserRegistrationApi"))) +@interface KASCUserRegistrationApi : KASCApi + +/** + * Register a new user. Either a phone number or an email address is required. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Register a new user. Either a phone number or an email address is required. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserRegistrationApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Register a new user. Either a phone number or an email address is required. + */ +- (KASCCFlow *> *)createAccountEmail:(NSString * _Nullable)email phone:(NSString * _Nullable)phone countryCode:(NSString * _Nullable)countryCode language:(NSString * _Nullable)language __attribute__((swift_name("createAccount(email:phone:countryCode:language:)"))); +@property (readonly) KASCCFlow *> *userRegistrationState __attribute__((swift_name("userRegistrationState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserRegistrationApi.Companion"))) +@interface KASCUserRegistrationApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserRegistrationApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_____________"))) +@interface KASCUserProfileDataModel_____________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel_____________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel_____________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_____________.Companion"))) +@interface KASCUserProfileDataModel_____________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel_____________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get the business associated with this user account and application [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessApi"))) +@interface KASCBusinessApi : KASCApi + +/** + * Get the business associated with this user account and application [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get the business associated with this user account and application [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCBusinessApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get the business associated with this user account and application + */ +- (KASCCFlow *> *)getBusinessBusinessId:(NSString *)businessId __attribute__((swift_name("getBusiness(businessId:)"))); +@property (readonly) KASCCFlow *> *businessState __attribute__((swift_name("businessState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessApi.Companion"))) +@interface KASCBusinessApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Branch_"))) +@interface KASCBranch_ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name webSite:(NSString * _Nullable)webSite phone:(KASCBranchPhone_ * _Nullable)phone logo:(KASCImage___________ * _Nullable)logo coverPhoto:(KASCImage___________ * _Nullable)coverPhoto address:(KASCBranchAddress_ * _Nullable)address __attribute__((swift_name("init(id:name:webSite:phone:logo:coverPhoto:address:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBranch_Companion *companion __attribute__((swift_name("companion"))); +- (KASCBranch_ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name webSite:(NSString * _Nullable)webSite phone:(KASCBranchPhone_ * _Nullable)phone logo:(KASCImage___________ * _Nullable)logo coverPhoto:(KASCImage___________ * _Nullable)coverPhoto address:(KASCBranchAddress_ * _Nullable)address __attribute__((swift_name("doCopy(id:name:webSite:phone:logo:coverPhoto:address:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCBranchAddress_ * _Nullable address __attribute__((swift_name("address"))); +@property (readonly) KASCImage___________ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique ID for this branch */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage___________ * _Nullable logo __attribute__((swift_name("logo"))); + +/** The name of this branch */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@property (readonly) KASCBranchPhone_ * _Nullable phone __attribute__((swift_name("phone"))); + +/** The website for this branch */ +@property (readonly) NSString * _Nullable webSite __attribute__((swift_name("webSite"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Branch_.Companion"))) +@interface KASCBranch_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBranch_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchAddress_"))) +@interface KASCBranchAddress_ : KASCBase +- (instancetype)initWithFormatted:(NSString * _Nullable)formatted street:(NSString * _Nullable)street city:(NSString * _Nullable)city region:(NSString * _Nullable)region country:(NSString * _Nullable)country lat:(KASCFloat * _Nullable)lat long:(KASCFloat * _Nullable)long_ __attribute__((swift_name("init(formatted:street:city:region:country:lat:long:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBranchAddress_Companion *companion __attribute__((swift_name("companion"))); +- (KASCBranchAddress_ *)doCopyFormatted:(NSString * _Nullable)formatted street:(NSString * _Nullable)street city:(NSString * _Nullable)city region:(NSString * _Nullable)region country:(NSString * _Nullable)country lat:(KASCFloat * _Nullable)lat long:(KASCFloat * _Nullable)long_ __attribute__((swift_name("doCopy(formatted:street:city:region:country:lat:long:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable city __attribute__((swift_name("city"))); +@property (readonly) NSString * _Nullable country __attribute__((swift_name("country"))); +@property (readonly) NSString * _Nullable formatted __attribute__((swift_name("formatted"))); +@property (readonly) KASCFloat * _Nullable lat __attribute__((swift_name("lat"))); +@property (readonly, getter=long) KASCFloat * _Nullable long_ __attribute__((swift_name("long_"))); +@property (readonly) NSString * _Nullable region __attribute__((swift_name("region"))); +@property (readonly) NSString * _Nullable street __attribute__((swift_name("street"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchAddress_.Companion"))) +@interface KASCBranchAddress_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBranchAddress_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchPhone_"))) +@interface KASCBranchPhone_ : KASCBase +- (instancetype)initWithNumber:(NSString * _Nullable)number countryCode:(NSString * _Nullable)countryCode nationalFormat:(NSString * _Nullable)nationalFormat intlFormat:(NSString * _Nullable)intlFormat __attribute__((swift_name("init(number:countryCode:nationalFormat:intlFormat:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBranchPhone_Companion *companion __attribute__((swift_name("companion"))); +- (KASCBranchPhone_ *)doCopyNumber:(NSString * _Nullable)number countryCode:(NSString * _Nullable)countryCode nationalFormat:(NSString * _Nullable)nationalFormat intlFormat:(NSString * _Nullable)intlFormat __attribute__((swift_name("doCopy(number:countryCode:nationalFormat:intlFormat:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); +@property (readonly) NSString * _Nullable intlFormat __attribute__((swift_name("intlFormat"))); +@property (readonly) NSString * _Nullable nationalFormat __attribute__((swift_name("nationalFormat"))); +@property (readonly) NSString * _Nullable number __attribute__((swift_name("number"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchPhone_.Companion"))) +@interface KASCBranchPhone_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBranchPhone_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Business_"))) +@interface KASCBusiness_ : KASCModel +- (instancetype)initWithData:(KASCBusinessData_____ * _Nullable)data included:(KASCBusinessBranchesData_ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCBusiness_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +- (KASCBusiness_ *)doCopyData:(KASCBusinessData_____ * _Nullable)data included:(KASCBusinessBranchesData_ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Details about a business */ +@property (readonly) KASCBusinessData_____ * _Nullable data __attribute__((swift_name("data"))); + +/** Details about a business' branches */ +@property (readonly) KASCBusinessBranchesData_ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Business_.Companion"))) +@interface KASCBusiness_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusiness_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Details about a business. Basic information is in main data field, while information on the business' branches are in the 'include' parameter + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessBranchesData_"))) +@interface KASCBusinessBranchesData_ : KASCBase +- (instancetype)initWithBranches:(NSArray * _Nullable)branches __attribute__((swift_name("init(branches:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessBranchesData_Companion *companion __attribute__((swift_name("companion"))); +- (KASCBusinessBranchesData_ *)doCopyBranches:(NSArray * _Nullable)branches __attribute__((swift_name("doCopy(branches:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable branches __attribute__((swift_name("branches"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessBranchesData_.Companion"))) +@interface KASCBusinessBranchesData_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessBranchesData_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory_____"))) +@interface KASCBusinessCategory_____ : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("init(name:icon:code:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessCategory_____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (KASCBusinessCategory_____ *)doCopyName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("doCopy(name:icon:code:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique ategory code for this category */ +@property (readonly) NSString * _Nullable code __attribute__((swift_name("code"))); + +/** Url to this category's icon */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** Name of this category */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory_____.Companion"))) +@interface KASCBusinessCategory_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessCategory_____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData_____"))) +@interface KASCBusinessData_____ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage___________ * _Nullable)logo logoTransparentBackground:(KASCImage___________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage___________ * _Nullable)coverPhoto category:(KASCBusinessCategory_____ * _Nullable)category __attribute__((swift_name("init(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessData_____Companion *companion __attribute__((swift_name("companion"))); + +/** + * Business profile data + */ +- (KASCBusinessData_____ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage___________ * _Nullable)logo logoTransparentBackground:(KASCImage___________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage___________ * _Nullable)coverPhoto category:(KASCBusinessCategory_____ * _Nullable)category __attribute__((swift_name("doCopy(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))); + +/** + * Business profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** General about text for the business */ +@property (readonly) NSString * _Nullable about __attribute__((swift_name("about"))); +@property (readonly) KASCBusinessCategory_____ * _Nullable category __attribute__((swift_name("category"))); + +/** Whether this is a conglomerate business. Conglomerate businesses are umbrellas for multiple business' in Kangaroo */ +@property (readonly) NSString * _Nullable conglomerate __attribute__((swift_name("conglomerate"))); +@property (readonly) KASCImage___________ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique business ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage___________ * _Nullable logo __attribute__((swift_name("logo"))); +@property (readonly) KASCImage___________ * _Nullable logoTransparentBackground __attribute__((swift_name("logoTransparentBackground"))); + +/** The manner in which this business rewards its customers. This can be by purchase amount of by visit to the store */ +@property (readonly) NSString * _Nullable loyaltyType __attribute__((swift_name("loyaltyType"))); + +/** The name of this business */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** Whether this is a white label business. White label business' don't appear in the Kangaroo Mobile Customer app, as they usually have their own app. */ +@property (readonly) NSString * _Nullable whiteLabel __attribute__((swift_name("whiteLabel"))); +@end + + +/** + * Business profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData_____.Companion"))) +@interface KASCBusinessData_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessData_____Companion *shared __attribute__((swift_name("shared"))); + +/** + * Business profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image___________"))) +@interface KASCImage___________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage___________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage___________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image___________.Companion"))) +@interface KASCImage___________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage___________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get the public settings of a business. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBusinessSettingsApi"))) +@interface KASCPublicBusinessSettingsApi : KASCApi + +/** + * Get the public settings of a business. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get the public settings of a business. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCPublicBusinessSettingsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get the public settings of a business. + */ +- (KASCCFlow *> *)getPublicBusinessSettings __attribute__((swift_name("getPublicBusinessSettings()"))); +@property (readonly) KASCCFlow *> *publicBusinessSettingsState __attribute__((swift_name("publicBusinessSettingsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBusinessSettingsApi.Companion"))) +@interface KASCPublicBusinessSettingsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicBusinessSettingsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory______"))) +@interface KASCBusinessCategory______ : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("init(name:icon:code:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessCategory______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (KASCBusinessCategory______ *)doCopyName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("doCopy(name:icon:code:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique ategory code for this category */ +@property (readonly) NSString * _Nullable code __attribute__((swift_name("code"))); + +/** Url to this category's icon */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** Name of this category */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory______.Companion"))) +@interface KASCBusinessCategory______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessCategory______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData______"))) +@interface KASCBusinessData______ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage____________ * _Nullable)logo logoTransparentBackground:(KASCImage____________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage____________ * _Nullable)coverPhoto category:(KASCBusinessCategory______ * _Nullable)category __attribute__((swift_name("init(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessData______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Business profile data + */ +- (KASCBusinessData______ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage____________ * _Nullable)logo logoTransparentBackground:(KASCImage____________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage____________ * _Nullable)coverPhoto category:(KASCBusinessCategory______ * _Nullable)category __attribute__((swift_name("doCopy(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))); + +/** + * Business profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** General about text for the business */ +@property (readonly) NSString * _Nullable about __attribute__((swift_name("about"))); +@property (readonly) KASCBusinessCategory______ * _Nullable category __attribute__((swift_name("category"))); + +/** Whether this is a conglomerate business. Conglomerate businesses are umbrellas for multiple business' in Kangaroo */ +@property (readonly) NSString * _Nullable conglomerate __attribute__((swift_name("conglomerate"))); +@property (readonly) KASCImage____________ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique business ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage____________ * _Nullable logo __attribute__((swift_name("logo"))); +@property (readonly) KASCImage____________ * _Nullable logoTransparentBackground __attribute__((swift_name("logoTransparentBackground"))); + +/** The manner in which this business rewards its customers. This can be by purchase amount of by visit to the store */ +@property (readonly) NSString * _Nullable loyaltyType __attribute__((swift_name("loyaltyType"))); + +/** The name of this business */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** Whether this is a white label business. White label business' don't appear in the Kangaroo Mobile Customer app, as they usually have their own app. */ +@property (readonly) NSString * _Nullable whiteLabel __attribute__((swift_name("whiteLabel"))); +@end + + +/** + * Business profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData______.Companion"))) +@interface KASCBusinessData______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessData______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Business profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image____________"))) +@interface KASCImage____________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage____________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage____________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image____________.Companion"))) +@interface KASCImage____________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage____________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * public settings related to the business + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBusinessSettings"))) +@interface KASCPublicBusinessSettings : KASCModel +- (instancetype)initWithData:(KASCPublicBusinessSettingsData * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCPublicBusinessSettingsCompanion *companion __attribute__((swift_name("companion"))); + +/** + * public settings related to the business + */ +- (KASCPublicBusinessSettings *)doCopyData:(KASCPublicBusinessSettingsData * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * public settings related to the business + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * public settings related to the business + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * public settings related to the business + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Details about the business public settings */ +@property (readonly) KASCPublicBusinessSettingsData * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * public settings related to the business + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBusinessSettings.Companion"))) +@interface KASCPublicBusinessSettingsCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * public settings related to the business + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicBusinessSettingsCompanion *shared __attribute__((swift_name("shared"))); + +/** + * public settings related to the business + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * business public settings data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBusinessSettingsData"))) +@interface KASCPublicBusinessSettingsData : KASCBase +- (instancetype)initWithBusiness:(KASCBusinessData______ * _Nullable)business __attribute__((swift_name("init(business:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCPublicBusinessSettingsDataCompanion *companion __attribute__((swift_name("companion"))); + +/** + * business public settings data + */ +- (KASCPublicBusinessSettingsData *)doCopyBusiness:(KASCBusinessData______ * _Nullable)business __attribute__((swift_name("doCopy(business:)"))); + +/** + * business public settings data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * business public settings data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * business public settings data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** business */ +@property (readonly) KASCBusinessData______ * _Nullable business __attribute__((swift_name("business"))); +@end + + +/** + * business public settings data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBusinessSettingsData.Companion"))) +@interface KASCPublicBusinessSettingsDataCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * business public settings data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicBusinessSettingsDataCompanion *shared __attribute__((swift_name("shared"))); + +/** + * business public settings data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get the last business chosen by the user in teh conglomerate feature [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GetDefaultBusinessIdApi"))) +@interface KASCGetDefaultBusinessIdApi : KASCApi + +/** + * Get the last business chosen by the user in teh conglomerate feature [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get the last business chosen by the user in teh conglomerate feature [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCGetDefaultBusinessIdApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get the last business chosen by the user in teh conglomerate feature + */ +- (KASCCFlow *> *)getDefaultBusinessIdBusinessId:(NSString *)businessId __attribute__((swift_name("getDefaultBusinessId(businessId:)"))); +@property (readonly) KASCCFlow *> *getDefaultBusinessIdState __attribute__((swift_name("getDefaultBusinessIdState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GetDefaultBusinessIdApi.Companion"))) +@interface KASCGetDefaultBusinessIdApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGetDefaultBusinessIdApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Default business chosen by the user + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("DefaultBusiness_"))) +@interface KASCDefaultBusiness_ : KASCModel +- (instancetype)initWithData:(KASCDefaultBusinessData_ * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCDefaultBusiness_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Default business chosen by the user + */ +- (KASCDefaultBusiness_ *)doCopyData:(KASCDefaultBusinessData_ * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * Default business chosen by the user + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Default business chosen by the user + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Default business chosen by the user + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Details about the default business */ +@property (readonly) KASCDefaultBusinessData_ * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * Default business chosen by the user + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("DefaultBusiness_.Companion"))) +@interface KASCDefaultBusiness_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Default business chosen by the user + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCDefaultBusiness_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Default business chosen by the user + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Default Business id data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("DefaultBusinessData_"))) +@interface KASCDefaultBusinessData_ : KASCBase +- (instancetype)initWithDefaultBranchId:(NSString * _Nullable)defaultBranchId defaultBusinessId:(NSString * _Nullable)defaultBusinessId __attribute__((swift_name("init(defaultBranchId:defaultBusinessId:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCDefaultBusinessData_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Default Business id data + */ +- (KASCDefaultBusinessData_ *)doCopyDefaultBranchId:(NSString * _Nullable)defaultBranchId defaultBusinessId:(NSString * _Nullable)defaultBusinessId __attribute__((swift_name("doCopy(defaultBranchId:defaultBusinessId:)"))); + +/** + * Default Business id data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Default Business id data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Default Business id data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique branch Id */ +@property (readonly) NSString * _Nullable defaultBranchId __attribute__((swift_name("defaultBranchId"))); + +/** Unique business Id */ +@property (readonly) NSString * _Nullable defaultBusinessId __attribute__((swift_name("defaultBusinessId"))); +@end + + +/** + * Default Business id data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("DefaultBusinessData_.Companion"))) +@interface KASCDefaultBusinessData_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Default Business id data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCDefaultBusinessData_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Default Business id data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of frequent buyer programs for this business [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessFrequentBuyerProgramsApi"))) +@interface KASCUserBusinessFrequentBuyerProgramsApi : KASCApi + +/** + * Get a list of frequent buyer programs for this business [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of frequent buyer programs for this business [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserBusinessFrequentBuyerProgramsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of frequent buyer programs for this business + */ +- (KASCCFlow *> *)getUserBusinessFrequentBuyerProgramsBusinessId:(NSString *)businessId __attribute__((swift_name("getUserBusinessFrequentBuyerPrograms(businessId:)"))); +@property (readonly) KASCCFlow *> *userBusinessFrequentBuyerProgramsState __attribute__((swift_name("userBusinessFrequentBuyerProgramsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessFrequentBuyerProgramsApi.Companion"))) +@interface KASCUserBusinessFrequentBuyerProgramsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessFrequentBuyerProgramsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramModel"))) +@interface KASCFrequentBuyerProgramModel : KASCModel +- (instancetype)initWithId:(KASCLong * _Nullable)id enabled:(KASCBoolean * _Nullable)enabled title:(NSString * _Nullable)title buyUnits:(KASCLong * _Nullable)buyUnits getUnits:(KASCLong * _Nullable)getUnits resetInterval:(KASCLong * _Nullable)resetInterval createdAt:(NSString * _Nullable)createdAt __attribute__((swift_name("init(id:enabled:title:buyUnits:getUnits:resetInterval:createdAt:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCFrequentBuyerProgramModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCFrequentBuyerProgramModel *)doCopyId:(KASCLong * _Nullable)id enabled:(KASCBoolean * _Nullable)enabled title:(NSString * _Nullable)title buyUnits:(KASCLong * _Nullable)buyUnits getUnits:(KASCLong * _Nullable)getUnits resetInterval:(KASCLong * _Nullable)resetInterval createdAt:(NSString * _Nullable)createdAt __attribute__((swift_name("doCopy(id:enabled:title:buyUnits:getUnits:resetInterval:createdAt:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCLong * _Nullable buyUnits __attribute__((swift_name("buyUnits"))); +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); +@property (readonly) KASCLong * _Nullable getUnits __attribute__((swift_name("getUnits"))); +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCLong * _Nullable resetInterval __attribute__((swift_name("resetInterval"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramModel.Companion"))) +@interface KASCFrequentBuyerProgramModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCFrequentBuyerProgramModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramsIncluded"))) +@interface KASCFrequentBuyerProgramsIncluded : KASCBase +- (instancetype)initWithFrequentBuyerPrograms:(NSArray * _Nullable)frequentBuyerPrograms __attribute__((swift_name("init(frequentBuyerPrograms:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCFrequentBuyerProgramsIncludedCompanion *companion __attribute__((swift_name("companion"))); +- (KASCFrequentBuyerProgramsIncluded *)doCopyFrequentBuyerPrograms:(NSArray * _Nullable)frequentBuyerPrograms __attribute__((swift_name("doCopy(frequentBuyerPrograms:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable frequentBuyerPrograms __attribute__((swift_name("frequentBuyerPrograms"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramsIncluded.Companion"))) +@interface KASCFrequentBuyerProgramsIncludedCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCFrequentBuyerProgramsIncludedCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Frequent buyer programs for this business + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramsModel"))) +@interface KASCFrequentBuyerProgramsModel : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel______________ * _Nullable)data included:(KASCFrequentBuyerProgramsIncluded * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCFrequentBuyerProgramsModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Frequent buyer programs for this business + */ +- (KASCFrequentBuyerProgramsModel *)doCopyData:(KASCUserProfileDataModel______________ * _Nullable)data included:(KASCFrequentBuyerProgramsIncluded * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * Frequent buyer programs for this business + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Frequent buyer programs for this business + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Frequent buyer programs for this business + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user data */ +@property (readonly) KASCUserProfileDataModel______________ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains frequent buyer programs */ +@property (readonly) KASCFrequentBuyerProgramsIncluded * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * Frequent buyer programs for this business + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramsModel.Companion"))) +@interface KASCFrequentBuyerProgramsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Frequent buyer programs for this business + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCFrequentBuyerProgramsModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Frequent buyer programs for this business + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel______________"))) +@interface KASCUserProfileDataModel______________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel______________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel______________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel______________.Companion"))) +@interface KASCUserProfileDataModel______________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel______________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of branches available to all users. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBranchesApi"))) +@interface KASCPublicBranchesApi : KASCApi + +/** + * Get a list of branches available to all users. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of branches available to all users. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCPublicBranchesApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of branches available to all users. + */ +- (KASCCFlow *> *)getPublicBranches __attribute__((swift_name("getPublicBranches()"))); +@property (readonly) KASCCFlow *> *publicBranchesState __attribute__((swift_name("publicBranchesState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBranchesApi.Companion"))) +@interface KASCPublicBranchesApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicBranchesApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Branch__"))) +@interface KASCBranch__ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name webSite:(NSString * _Nullable)webSite phone:(KASCBranchPhone__ * _Nullable)phone logo:(KASCImage_____________ * _Nullable)logo coverPhoto:(KASCImage_____________ * _Nullable)coverPhoto address:(KASCBranchAddress__ * _Nullable)address __attribute__((swift_name("init(id:name:webSite:phone:logo:coverPhoto:address:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBranch__Companion *companion __attribute__((swift_name("companion"))); +- (KASCBranch__ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name webSite:(NSString * _Nullable)webSite phone:(KASCBranchPhone__ * _Nullable)phone logo:(KASCImage_____________ * _Nullable)logo coverPhoto:(KASCImage_____________ * _Nullable)coverPhoto address:(KASCBranchAddress__ * _Nullable)address __attribute__((swift_name("doCopy(id:name:webSite:phone:logo:coverPhoto:address:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCBranchAddress__ * _Nullable address __attribute__((swift_name("address"))); +@property (readonly) KASCImage_____________ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique ID for this branch */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage_____________ * _Nullable logo __attribute__((swift_name("logo"))); + +/** The name of this branch */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@property (readonly) KASCBranchPhone__ * _Nullable phone __attribute__((swift_name("phone"))); + +/** The website for this branch */ +@property (readonly) NSString * _Nullable webSite __attribute__((swift_name("webSite"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Branch__.Companion"))) +@interface KASCBranch__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBranch__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchAddress__"))) +@interface KASCBranchAddress__ : KASCBase +- (instancetype)initWithFormatted:(NSString * _Nullable)formatted street:(NSString * _Nullable)street city:(NSString * _Nullable)city region:(NSString * _Nullable)region country:(NSString * _Nullable)country lat:(KASCFloat * _Nullable)lat long:(KASCFloat * _Nullable)long_ __attribute__((swift_name("init(formatted:street:city:region:country:lat:long:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBranchAddress__Companion *companion __attribute__((swift_name("companion"))); +- (KASCBranchAddress__ *)doCopyFormatted:(NSString * _Nullable)formatted street:(NSString * _Nullable)street city:(NSString * _Nullable)city region:(NSString * _Nullable)region country:(NSString * _Nullable)country lat:(KASCFloat * _Nullable)lat long:(KASCFloat * _Nullable)long_ __attribute__((swift_name("doCopy(formatted:street:city:region:country:lat:long:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable city __attribute__((swift_name("city"))); +@property (readonly) NSString * _Nullable country __attribute__((swift_name("country"))); +@property (readonly) NSString * _Nullable formatted __attribute__((swift_name("formatted"))); +@property (readonly) KASCFloat * _Nullable lat __attribute__((swift_name("lat"))); +@property (readonly, getter=long) KASCFloat * _Nullable long_ __attribute__((swift_name("long_"))); +@property (readonly) NSString * _Nullable region __attribute__((swift_name("region"))); +@property (readonly) NSString * _Nullable street __attribute__((swift_name("street"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchAddress__.Companion"))) +@interface KASCBranchAddress__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBranchAddress__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchPhone__"))) +@interface KASCBranchPhone__ : KASCBase +- (instancetype)initWithNumber:(NSString * _Nullable)number countryCode:(NSString * _Nullable)countryCode nationalFormat:(NSString * _Nullable)nationalFormat intlFormat:(NSString * _Nullable)intlFormat __attribute__((swift_name("init(number:countryCode:nationalFormat:intlFormat:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBranchPhone__Companion *companion __attribute__((swift_name("companion"))); +- (KASCBranchPhone__ *)doCopyNumber:(NSString * _Nullable)number countryCode:(NSString * _Nullable)countryCode nationalFormat:(NSString * _Nullable)nationalFormat intlFormat:(NSString * _Nullable)intlFormat __attribute__((swift_name("doCopy(number:countryCode:nationalFormat:intlFormat:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); +@property (readonly) NSString * _Nullable intlFormat __attribute__((swift_name("intlFormat"))); +@property (readonly) NSString * _Nullable nationalFormat __attribute__((swift_name("nationalFormat"))); +@property (readonly) NSString * _Nullable number __attribute__((swift_name("number"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BranchPhone__.Companion"))) +@interface KASCBranchPhone__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBranchPhone__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_____________"))) +@interface KASCImage_____________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage_____________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage_____________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_____________.Companion"))) +@interface KASCImage_____________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage_____________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBranchesModel"))) +@interface KASCPublicBranchesModel : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCPublicBranchesModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCPublicBranchesModel *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBranchesModel.Companion"))) +@interface KASCPublicBranchesModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicBranchesModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Update a users' PIN [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserPinUpdateApi"))) +@interface KASCUserPinUpdateApi : KASCApi + +/** + * Update a users' PIN [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Update a users' PIN [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserPinUpdateApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Update a users' PIN + */ +- (KASCCFlow *> *)updatePinUpdatePinRequest:(KASCUpdatePinRequest *)updatePinRequest __attribute__((swift_name("updatePin(updatePinRequest:)"))); + +/** + * Update a users' PIN + * + * This method is used by the Native artifact when dealing with object body params + */ +- (KASCCFlow *> *)updatePinMethods:(NSDictionary *)methods __attribute__((swift_name("updatePin(methods:)"))); +@property (readonly) KASCCFlow *> *userPinUpdateState __attribute__((swift_name("userPinUpdateState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserPinUpdateApi.Companion"))) +@interface KASCUserPinUpdateApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserPinUpdateApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_______________________"))) +@interface KASCLanguage_______________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_______________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_______________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_______________________.Companion"))) +@interface KASCLanguage_______________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_______________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A referral program + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram______"))) +@interface KASCReferralProgram______ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("init(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCReferralProgram______Companion *companion __attribute__((swift_name("companion"))); + +/** + * A referral program + */ +- (KASCReferralProgram______ *)doCopyId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("doCopy(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))); + +/** + * A referral program + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A referral program + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A referral program + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The minimum purchawe amount required for a succesful referral. */ +@property (readonly) KASCDouble * _Nullable condMinAmount __attribute__((swift_name("condMinAmount"))); + +/** Denotes whether this referral program is currently active. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The number of days the new customer has to sign up in order for a referral to be sucessful. */ +@property (readonly) KASCLong * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); + +/** The unique id of this referral program. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Denotes whether this referral program has enabled share links. Referral share links are links that the customer can send to prospective referrals. A User can sign up to the business through this link in order to complete the referral. */ +@property (readonly) KASCBoolean * _Nullable linkReferralEnabled __attribute__((swift_name("linkReferralEnabled"))); + +/** The number of points the new customer will earn. */ +@property (readonly) KASCLong * _Nullable refereeEarns __attribute__((swift_name("refereeEarns"))); + +/** The number of points the new customer who made the referral will earn. */ +@property (readonly) KASCLong * _Nullable refererEarns __attribute__((swift_name("refererEarns"))); + +/** A link that can be shared to prospective referrals. */ +@property (readonly) NSString * _Nullable referralLink __attribute__((swift_name("referralLink"))); +@property (readonly) NSString * _Nullable ruleName __attribute__((swift_name("ruleName"))); +@end + + +/** + * A referral program + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram______.Companion"))) +@interface KASCReferralProgram______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A referral program + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCReferralProgram______Companion *shared __attribute__((swift_name("shared"))); + +/** + * A referral program + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel_______"))) +@interface KASCTierLevel_______ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevel_______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier level. + */ +- (KASCTierLevel_______ *)doCopyId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))); + +/** + * Represents a single tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The icon of this tier level. */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** The ID for this tier. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** translation for each tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); + +/** The name of this tier level. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount of points acquired that is required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachPoints __attribute__((swift_name("reachPoints"))); + +/** The amount of money spent required to reach this tier. */ +@property (readonly) KASCFloat * _Nullable reachSpend __attribute__((swift_name("reachSpend"))); + +/** The amount of visits made to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachVisits __attribute__((swift_name("reachVisits"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable tierPerks __attribute__((swift_name("tierPerks"))); +@end + + +/** + * Represents a single tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel_______.Companion"))) +@interface KASCTierLevel_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevel_______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation_______"))) +@interface KASCTierLevelTranslation_______ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage_______________________ * _Nullable)language __attribute__((swift_name("init(languageId:name:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevelTranslation_______Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierLevelTranslation_______ *)doCopyLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage_______________________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:name:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The description of this tier level as translated. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_______________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation_______.Companion"))) +@interface KASCTierLevelTranslation_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevelTranslation_______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier perk for a tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk_______"))) +@interface KASCTierPerk_______ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerk_______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (KASCTierPerk_______ *)doCopyId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Whether this tier perk is currently enabled or disabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The ID for this tier perk. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Whether the offer this tier perk is currently attached to is expired or not. */ +@property (readonly) KASCBoolean * _Nullable isExpired __attribute__((swift_name("isExpired"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); +@property (readonly) KASCLong * _Nullable offerId __attribute__((swift_name("offerId"))); +@property (readonly) KASCLong * _Nullable punchItemId __attribute__((swift_name("punchItemId"))); + +/** The ID for the tier level this tier perk is related to. */ +@property (readonly) KASCLong * _Nullable tierId __attribute__((swift_name("tierId"))); + +/** The title of this tier perk. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + + +/** + * Represents a single tier perk for a tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk_______.Companion"))) +@interface KASCTierPerk_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier perk for a tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerk_______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation_______"))) +@interface KASCTierPerkTranslation_______ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage_______________________ * _Nullable)language __attribute__((swift_name("init(languageId:title:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerkTranslation_______Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierPerkTranslation_______ *)doCopyLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage_______________________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_______________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation_______.Companion"))) +@interface KASCTierPerkTranslation_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerkTranslation_______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress_______"))) +@interface KASCTierProgress_______ : KASCBase +- (instancetype)initWithStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("init(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierProgress_______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (KASCTierProgress_______ *)doCopyStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("doCopy(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The end date for this tier session. The tier will be reset once this date is reached. */ +@property (readonly) NSString * _Nullable endDate __attribute__((swift_name("endDate"))); + +/** The amount of spend left in the user's current tier progress. Once they have acquired this many more amount of spend, they will be moved into the next tier. */ +@property (readonly) KASCFloat * _Nullable leftAmount __attribute__((swift_name("leftAmount"))); + +/** The amount of points left in the user's current tier progress. Once they have acquired this many more amount of points, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftPoints __attribute__((swift_name("leftPoints"))); + +/** The amount of visits left in the user's current tier progress. Once they have acquired this many more amount of visits, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftVisits __attribute__((swift_name("leftVisits"))); + +/** The name of the user's next tier level. */ +@property (readonly) NSString * _Nullable nextTierLevel __attribute__((swift_name("nextTierLevel"))); + +/** The start date for this tier session. */ +@property (readonly) NSString * _Nullable startDate __attribute__((swift_name("startDate"))); + +/** The name of the user's current tier level */ +@property (readonly) NSString * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** The name of the user's current tier level. Tiers are recalculated once per day, as such \"tier_level\" may not be completely up to date. */ +@property (readonly) NSString * _Nullable tierLevelLive __attribute__((swift_name("tierLevelLive"))); + +/** The users current tier progress in their \"tier_level\". This will be a number between 0 and 1. A tier progress of 0.5 means that the user has made 50% progress in their current tier. */ +@property (readonly) KASCFloat * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); + +/** Purchase amount between start_date and end_date. */ +@property (readonly) KASCFloat * _Nullable totalAmount __attribute__((swift_name("totalAmount"))); + +/** Purchase points between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalPoints __attribute__((swift_name("totalPoints"))); + +/** Purchase visits between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalVisits __attribute__((swift_name("totalVisits"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress_______.Companion"))) +@interface KASCTierProgress_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierProgress_______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UpdatePinRequest"))) +@interface KASCUpdatePinRequest : KASCBase +- (instancetype)initWithPinCode:(NSString *)pinCode __attribute__((swift_name("init(pinCode:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUpdatePinRequestCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUpdatePinRequest *)doCopyPinCode:(NSString *)pinCode __attribute__((swift_name("doCopy(pinCode:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The new PIN */ +@property (readonly) NSString *pinCode __attribute__((swift_name("pinCode"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UpdatePinRequest.Companion"))) +@interface KASCUpdatePinRequestCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUpdatePinRequestCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile balance data. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance_______"))) +@interface KASCUserBalance_______ : KASCBase +- (instancetype)initWithPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("init(points:giftcard:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBalance_______Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile balance data. + */ +- (KASCUserBalance_______ *)doCopyPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("doCopy(points:giftcard:)"))); + +/** + * User Profile balance data. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile balance data. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile balance data. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount of store credit in the users' e-wallet. */ +@property (readonly) KASCDouble * _Nullable giftcard __attribute__((swift_name("giftcard"))); + +/** The number of points this user currently has. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + + +/** + * User Profile balance data. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance_______.Companion"))) +@interface KASCUserBalance_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile balance data. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBalance_______Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile balance data. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_______________"))) +@interface KASCUserProfileDataModel_______________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel_______________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel_______________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_______________.Companion"))) +@interface KASCUserProfileDataModel_______________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel_______________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Extra user profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude______"))) +@interface KASCUserProfileInclude______ : KASCBase +- (instancetype)initWithBalance:(KASCUserBalance_______ * _Nullable)balance tierLevel:(KASCTierLevel_______ * _Nullable)tierLevel tierProgress:(KASCTierProgress_______ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("init(balance:tierLevel:tierProgress:referralPrograms:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserProfileInclude______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Extra user profile data + */ +- (KASCUserProfileInclude______ *)doCopyBalance:(KASCUserBalance_______ * _Nullable)balance tierLevel:(KASCTierLevel_______ * _Nullable)tierLevel tierProgress:(KASCTierProgress_______ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("doCopy(balance:tierLevel:tierProgress:referralPrograms:)"))); + +/** + * Extra user profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Extra user profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Extra user profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** User Profile balance data. */ +@property (readonly) KASCUserBalance_______ * _Nullable balance __attribute__((swift_name("balance"))); + +/** A list of referral programs the user has access to. */ +@property (readonly) NSArray * _Nullable referralPrograms __attribute__((swift_name("referralPrograms"))); + +/** User's tier status. */ +@property (readonly) KASCTierLevel_______ * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** User's tier progress and status. If a user's tier status is statically fixed, this will be null as they do not progress from tier to tier. */ +@property (readonly) KASCTierProgress_______ * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); +@end + + +/** + * Extra user profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude______.Companion"))) +@interface KASCUserProfileInclude______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Extra user profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileInclude______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Extra user profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel_____"))) +@interface KASCUserProfileModel_____ : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel_______________ * _Nullable)data included:(KASCUserProfileInclude______ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileModel_____Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileModel_____ *)doCopyData:(KASCUserProfileDataModel_______________ * _Nullable)data included:(KASCUserProfileInclude______ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user profile data */ +@property (readonly) KASCUserProfileDataModel_______________ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains user balance data */ +@property (readonly) KASCUserProfileInclude______ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel_____.Companion"))) +@interface KASCUserProfileModel_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileModel_____Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Send user Push notification token [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PushTokenRegistrationApi"))) +@interface KASCPushTokenRegistrationApi : KASCApi + +/** + * Send user Push notification token [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Send user Push notification token [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCPushTokenRegistrationApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Send user Push notification token + */ +- (KASCCFlow *> *)registerPushTokenAndroidDeviceToken:(NSString * _Nullable)androidDeviceToken iosDeviceToken:(NSString * _Nullable)iosDeviceToken __attribute__((swift_name("registerPushToken(androidDeviceToken:iosDeviceToken:)"))); +@property (readonly) KASCCFlow *> *pushTokenRegistrationState __attribute__((swift_name("pushTokenRegistrationState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PushTokenRegistrationApi.Companion"))) +@interface KASCPushTokenRegistrationApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPushTokenRegistrationApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language________________________"))) +@interface KASCLanguage________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language________________________.Companion"))) +@interface KASCLanguage________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A referral program + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram_______"))) +@interface KASCReferralProgram_______ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("init(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCReferralProgram_______Companion *companion __attribute__((swift_name("companion"))); + +/** + * A referral program + */ +- (KASCReferralProgram_______ *)doCopyId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("doCopy(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))); + +/** + * A referral program + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A referral program + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A referral program + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The minimum purchawe amount required for a succesful referral. */ +@property (readonly) KASCDouble * _Nullable condMinAmount __attribute__((swift_name("condMinAmount"))); + +/** Denotes whether this referral program is currently active. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The number of days the new customer has to sign up in order for a referral to be sucessful. */ +@property (readonly) KASCLong * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); + +/** The unique id of this referral program. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Denotes whether this referral program has enabled share links. Referral share links are links that the customer can send to prospective referrals. A User can sign up to the business through this link in order to complete the referral. */ +@property (readonly) KASCBoolean * _Nullable linkReferralEnabled __attribute__((swift_name("linkReferralEnabled"))); + +/** The number of points the new customer will earn. */ +@property (readonly) KASCLong * _Nullable refereeEarns __attribute__((swift_name("refereeEarns"))); + +/** The number of points the new customer who made the referral will earn. */ +@property (readonly) KASCLong * _Nullable refererEarns __attribute__((swift_name("refererEarns"))); + +/** A link that can be shared to prospective referrals. */ +@property (readonly) NSString * _Nullable referralLink __attribute__((swift_name("referralLink"))); +@property (readonly) NSString * _Nullable ruleName __attribute__((swift_name("ruleName"))); +@end + + +/** + * A referral program + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram_______.Companion"))) +@interface KASCReferralProgram_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A referral program + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCReferralProgram_______Companion *shared __attribute__((swift_name("shared"))); + +/** + * A referral program + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel________"))) +@interface KASCTierLevel________ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevel________Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier level. + */ +- (KASCTierLevel________ *)doCopyId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))); + +/** + * Represents a single tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The icon of this tier level. */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** The ID for this tier. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** translation for each tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); + +/** The name of this tier level. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount of points acquired that is required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachPoints __attribute__((swift_name("reachPoints"))); + +/** The amount of money spent required to reach this tier. */ +@property (readonly) KASCFloat * _Nullable reachSpend __attribute__((swift_name("reachSpend"))); + +/** The amount of visits made to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachVisits __attribute__((swift_name("reachVisits"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable tierPerks __attribute__((swift_name("tierPerks"))); +@end + + +/** + * Represents a single tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel________.Companion"))) +@interface KASCTierLevel________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevel________Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation________"))) +@interface KASCTierLevelTranslation________ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage________________________ * _Nullable)language __attribute__((swift_name("init(languageId:name:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevelTranslation________Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierLevelTranslation________ *)doCopyLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage________________________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:name:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The description of this tier level as translated. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation________.Companion"))) +@interface KASCTierLevelTranslation________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevelTranslation________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier perk for a tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk________"))) +@interface KASCTierPerk________ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerk________Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (KASCTierPerk________ *)doCopyId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Whether this tier perk is currently enabled or disabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The ID for this tier perk. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Whether the offer this tier perk is currently attached to is expired or not. */ +@property (readonly) KASCBoolean * _Nullable isExpired __attribute__((swift_name("isExpired"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); +@property (readonly) KASCLong * _Nullable offerId __attribute__((swift_name("offerId"))); +@property (readonly) KASCLong * _Nullable punchItemId __attribute__((swift_name("punchItemId"))); + +/** The ID for the tier level this tier perk is related to. */ +@property (readonly) KASCLong * _Nullable tierId __attribute__((swift_name("tierId"))); + +/** The title of this tier perk. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + + +/** + * Represents a single tier perk for a tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk________.Companion"))) +@interface KASCTierPerk________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier perk for a tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerk________Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation________"))) +@interface KASCTierPerkTranslation________ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage________________________ * _Nullable)language __attribute__((swift_name("init(languageId:title:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerkTranslation________Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierPerkTranslation________ *)doCopyLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage________________________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation________.Companion"))) +@interface KASCTierPerkTranslation________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerkTranslation________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress________"))) +@interface KASCTierProgress________ : KASCBase +- (instancetype)initWithStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("init(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierProgress________Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (KASCTierProgress________ *)doCopyStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("doCopy(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The end date for this tier session. The tier will be reset once this date is reached. */ +@property (readonly) NSString * _Nullable endDate __attribute__((swift_name("endDate"))); + +/** The amount of spend left in the user's current tier progress. Once they have acquired this many more amount of spend, they will be moved into the next tier. */ +@property (readonly) KASCFloat * _Nullable leftAmount __attribute__((swift_name("leftAmount"))); + +/** The amount of points left in the user's current tier progress. Once they have acquired this many more amount of points, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftPoints __attribute__((swift_name("leftPoints"))); + +/** The amount of visits left in the user's current tier progress. Once they have acquired this many more amount of visits, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftVisits __attribute__((swift_name("leftVisits"))); + +/** The name of the user's next tier level. */ +@property (readonly) NSString * _Nullable nextTierLevel __attribute__((swift_name("nextTierLevel"))); + +/** The start date for this tier session. */ +@property (readonly) NSString * _Nullable startDate __attribute__((swift_name("startDate"))); + +/** The name of the user's current tier level */ +@property (readonly) NSString * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** The name of the user's current tier level. Tiers are recalculated once per day, as such \"tier_level\" may not be completely up to date. */ +@property (readonly) NSString * _Nullable tierLevelLive __attribute__((swift_name("tierLevelLive"))); + +/** The users current tier progress in their \"tier_level\". This will be a number between 0 and 1. A tier progress of 0.5 means that the user has made 50% progress in their current tier. */ +@property (readonly) KASCFloat * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); + +/** Purchase amount between start_date and end_date. */ +@property (readonly) KASCFloat * _Nullable totalAmount __attribute__((swift_name("totalAmount"))); + +/** Purchase points between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalPoints __attribute__((swift_name("totalPoints"))); + +/** Purchase visits between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalVisits __attribute__((swift_name("totalVisits"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress________.Companion"))) +@interface KASCTierProgress________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierProgress________Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile balance data. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance________"))) +@interface KASCUserBalance________ : KASCBase +- (instancetype)initWithPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("init(points:giftcard:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBalance________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile balance data. + */ +- (KASCUserBalance________ *)doCopyPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("doCopy(points:giftcard:)"))); + +/** + * User Profile balance data. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile balance data. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile balance data. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount of store credit in the users' e-wallet. */ +@property (readonly) KASCDouble * _Nullable giftcard __attribute__((swift_name("giftcard"))); + +/** The number of points this user currently has. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + + +/** + * User Profile balance data. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance________.Companion"))) +@interface KASCUserBalance________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile balance data. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBalance________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile balance data. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel________________"))) +@interface KASCUserProfileDataModel________________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel________________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel________________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel________________.Companion"))) +@interface KASCUserProfileDataModel________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel________________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Extra user profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude_______"))) +@interface KASCUserProfileInclude_______ : KASCBase +- (instancetype)initWithBalance:(KASCUserBalance________ * _Nullable)balance tierLevel:(KASCTierLevel________ * _Nullable)tierLevel tierProgress:(KASCTierProgress________ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("init(balance:tierLevel:tierProgress:referralPrograms:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserProfileInclude_______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Extra user profile data + */ +- (KASCUserProfileInclude_______ *)doCopyBalance:(KASCUserBalance________ * _Nullable)balance tierLevel:(KASCTierLevel________ * _Nullable)tierLevel tierProgress:(KASCTierProgress________ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("doCopy(balance:tierLevel:tierProgress:referralPrograms:)"))); + +/** + * Extra user profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Extra user profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Extra user profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** User Profile balance data. */ +@property (readonly) KASCUserBalance________ * _Nullable balance __attribute__((swift_name("balance"))); + +/** A list of referral programs the user has access to. */ +@property (readonly) NSArray * _Nullable referralPrograms __attribute__((swift_name("referralPrograms"))); + +/** User's tier status. */ +@property (readonly) KASCTierLevel________ * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** User's tier progress and status. If a user's tier status is statically fixed, this will be null as they do not progress from tier to tier. */ +@property (readonly) KASCTierProgress________ * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); +@end + + +/** + * Extra user profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude_______.Companion"))) +@interface KASCUserProfileInclude_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Extra user profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileInclude_______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Extra user profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel______"))) +@interface KASCUserProfileModel______ : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel________________ * _Nullable)data included:(KASCUserProfileInclude_______ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileModel______Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileModel______ *)doCopyData:(KASCUserProfileDataModel________________ * _Nullable)data included:(KASCUserProfileInclude_______ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user profile data */ +@property (readonly) KASCUserProfileDataModel________________ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains user balance data */ +@property (readonly) KASCUserProfileInclude_______ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel______.Companion"))) +@interface KASCUserProfileModel______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileModel______Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of offers available to this user by specific business. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessOffersApi"))) +@interface KASCUserBusinessOffersApi : KASCApi + +/** + * Get a list of offers available to this user by specific business. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of offers available to this user by specific business. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserBusinessOffersApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of offers available to this user by specific business. + */ +- (KASCCFlow *> *)getUserBusinessOffersBusinessId:(NSString *)businessId __attribute__((swift_name("getUserBusinessOffers(businessId:)"))); +@property (readonly) KASCCFlow *> *userBusinessOffersState __attribute__((swift_name("userBusinessOffersState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessOffersApi.Companion"))) +@interface KASCUserBusinessOffersApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessOffersApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory_______"))) +@interface KASCBusinessCategory_______ : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("init(name:icon:code:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessCategory_______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (KASCBusinessCategory_______ *)doCopyName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("doCopy(name:icon:code:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique ategory code for this category */ +@property (readonly) NSString * _Nullable code __attribute__((swift_name("code"))); + +/** Url to this category's icon */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** Name of this category */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory_______.Companion"))) +@interface KASCBusinessCategory_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessCategory_______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData_______"))) +@interface KASCBusinessData_______ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage______________ * _Nullable)logo logoTransparentBackground:(KASCImage______________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage______________ * _Nullable)coverPhoto category:(KASCBusinessCategory_______ * _Nullable)category __attribute__((swift_name("init(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessData_______Companion *companion __attribute__((swift_name("companion"))); + +/** + * Business profile data + */ +- (KASCBusinessData_______ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage______________ * _Nullable)logo logoTransparentBackground:(KASCImage______________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage______________ * _Nullable)coverPhoto category:(KASCBusinessCategory_______ * _Nullable)category __attribute__((swift_name("doCopy(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))); + +/** + * Business profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** General about text for the business */ +@property (readonly) NSString * _Nullable about __attribute__((swift_name("about"))); +@property (readonly) KASCBusinessCategory_______ * _Nullable category __attribute__((swift_name("category"))); + +/** Whether this is a conglomerate business. Conglomerate businesses are umbrellas for multiple business' in Kangaroo */ +@property (readonly) NSString * _Nullable conglomerate __attribute__((swift_name("conglomerate"))); +@property (readonly) KASCImage______________ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique business ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage______________ * _Nullable logo __attribute__((swift_name("logo"))); +@property (readonly) KASCImage______________ * _Nullable logoTransparentBackground __attribute__((swift_name("logoTransparentBackground"))); + +/** The manner in which this business rewards its customers. This can be by purchase amount of by visit to the store */ +@property (readonly) NSString * _Nullable loyaltyType __attribute__((swift_name("loyaltyType"))); + +/** The name of this business */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** Whether this is a white label business. White label business' don't appear in the Kangaroo Mobile Customer app, as they usually have their own app. */ +@property (readonly) NSString * _Nullable whiteLabel __attribute__((swift_name("whiteLabel"))); +@end + + +/** + * Business profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData_______.Companion"))) +@interface KASCBusinessData_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessData_______Companion *shared __attribute__((swift_name("shared"))); + +/** + * Business profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image______________"))) +@interface KASCImage______________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage______________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage______________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image______________.Companion"))) +@interface KASCImage______________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage______________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_________________________"))) +@interface KASCLanguage_________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_________________________.Companion"))) +@interface KASCLanguage_________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction____"))) +@interface KASCOfferAction____ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferAction____Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferAction____ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction____.Companion"))) +@interface KASCOfferAction____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferAction____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel____"))) +@interface KASCOfferModel____ : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCOfferModel____Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferModel____ *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this offer. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** Whether this offer must be claimed on a mobile app before being used in store. */ +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The offer description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this offer. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isCouponRedeemed __attribute__((swift_name("isCouponRedeemed"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this offer. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** The maximum purchase amount for this offer to be applied. */ +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); + +/** The minimum purchase amount for this offer to be applied */ +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); + +/** The multiplication factor of this offer. This only applies to Point Multiplier offers. */ +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this offer ever expires or not. If false, this offer is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this offer into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); + +/** The amount of points required for this offer to be applied. Only used for Convertible Coupons */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this offer */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this offer. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The offer title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This can be a free product, dollar based discount, percentage based discount, point multiplier, bonus points, and free shipping. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel____.Companion"))) +@interface KASCOfferModel____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferModel____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this offer. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation____"))) +@interface KASCOfferTranslation____ : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage_________________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferTranslation____Companion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this offer. + */ +- (KASCOfferTranslation____ *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage_________________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))); + +/** + * A language translation of this offer. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this offer. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this offer. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** where is this coupon available at. */ +@property (readonly) NSString * _Nullable couponAvailableAt __attribute__((swift_name("couponAvailableAt"))); + +/** The translated coupon description. */ +@property (readonly) NSString * _Nullable couponDescription __attribute__((swift_name("couponDescription"))); + +/** The language appropriate link of this coupon. */ +@property (readonly) NSString * _Nullable couponLink __attribute__((swift_name("couponLink"))); + +/** The translated coupon terms and conditions. */ +@property (readonly) NSString * _Nullable couponTermsConditions __attribute__((swift_name("couponTermsConditions"))); + +/** The translated coupon title. */ +@property (readonly) NSString * _Nullable couponTitle __attribute__((swift_name("couponTitle"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated offer description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this offer. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated offer terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated offer title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this offer. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation____.Companion"))) +@interface KASCOfferTranslation____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this offer. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferTranslation____Companion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this offer. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessOffersIncluded"))) +@interface KASCUserBusinessOffersIncluded : KASCBase +- (instancetype)initWithOffers:(NSArray * _Nullable)offers __attribute__((swift_name("init(offers:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBusinessOffersIncludedCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserBusinessOffersIncluded *)doCopyOffers:(NSArray * _Nullable)offers __attribute__((swift_name("doCopy(offers:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable offers __attribute__((swift_name("offers"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessOffersIncluded.Companion"))) +@interface KASCUserBusinessOffersIncludedCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessOffersIncludedCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessOffersModel"))) +@interface KASCUserBusinessOffersModel : KASCModel +- (instancetype)initWithData:(KASCBusinessData_______ *)data included:(KASCUserBusinessOffersIncluded * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserBusinessOffersModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserBusinessOffersModel *)doCopyData:(KASCBusinessData_______ *)data included:(KASCUserBusinessOffersIncluded * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains business data */ +@property (readonly) KASCBusinessData_______ *data __attribute__((swift_name("data"))); + +/** Contains all offers items */ +@property (readonly) KASCUserBusinessOffersIncluded * _Nullable included __attribute__((swift_name("included"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessOffersModel.Companion"))) +@interface KASCUserBusinessOffersModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessOffersModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Acquires public business banners. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBannersApi"))) +@interface KASCPublicBannersApi : KASCApi + +/** + * Acquires public business banners. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Acquires public business banners. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCPublicBannersApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Acquires public business banners. + */ +- (KASCCFlow *> *)getPublicBanners __attribute__((swift_name("getPublicBanners()"))); +@property (readonly) KASCCFlow *> *publicBannersState __attribute__((swift_name("publicBannersState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicBannersApi.Companion"))) +@interface KASCPublicBannersApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicBannersApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * A business banner. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Banner__"))) +@interface KASCBanner__ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id type:(KASCInt * _Nullable)type imagePath:(NSString * _Nullable)imagePath link:(NSString * _Nullable)link createdAt:(NSString * _Nullable)createdAt publishedAt:(NSString * _Nullable)publishedAt expiresAt:(NSString * _Nullable)expiresAt language:(KASCLanguage__________________________ * _Nullable)language __attribute__((swift_name("init(id:type:imagePath:link:createdAt:publishedAt:expiresAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBanner__Companion *companion __attribute__((swift_name("companion"))); + +/** + * A business banner. + */ +- (KASCBanner__ *)doCopyId:(KASCLong * _Nullable)id type:(KASCInt * _Nullable)type imagePath:(NSString * _Nullable)imagePath link:(NSString * _Nullable)link createdAt:(NSString * _Nullable)createdAt publishedAt:(NSString * _Nullable)publishedAt expiresAt:(NSString * _Nullable)expiresAt language:(KASCLanguage__________________________ * _Nullable)language __attribute__((swift_name("doCopy(id:type:imagePath:link:createdAt:publishedAt:expiresAt:language:)"))); + +/** + * A business banner. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A business banner. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A business banner. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); + +/** Unique banner id. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable imagePath __attribute__((swift_name("imagePath"))); +@property (readonly) KASCLanguage__________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable publishedAt __attribute__((swift_name("publishedAt"))); + +/** The banner type. */ +@property (readonly) KASCInt * _Nullable type __attribute__((swift_name("type"))); +@end + + +/** + * A business banner. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Banner__.Companion"))) +@interface KASCBanner__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A business banner. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBanner__Companion *shared __attribute__((swift_name("shared"))); + +/** + * A business banner. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business banners. Used to display promotional material. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BannersModel_"))) +@interface KASCBannersModel_ : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCBannersModel_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Business banners. Used to display promotional material. + */ +- (KASCBannersModel_ *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * Business banners. Used to display promotional material. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business banners. Used to display promotional material. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business banners. Used to display promotional material. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * Business banners. Used to display promotional material. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BannersModel_.Companion"))) +@interface KASCBannersModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business banners. Used to display promotional material. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBannersModel_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Business banners. Used to display promotional material. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language__________________________"))) +@interface KASCLanguage__________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage__________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage__________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language__________________________.Companion"))) +@interface KASCLanguage__________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage__________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Update a users notification settings. This will enable or disable push, sms, and or email notifications from the selected business. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UpdateNotificationPreferencesApi"))) +@interface KASCUpdateNotificationPreferencesApi : KASCApi + +/** + * Update a users notification settings. This will enable or disable push, sms, and or email notifications from the selected business. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Update a users notification settings. This will enable or disable push, sms, and or email notifications from the selected business. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUpdateNotificationPreferencesApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Update a users notification settings. This will enable or disable push, sms, and or email notifications from the selected business. + */ +- (KASCCFlow *> *)updateNotificationPreferencesNotificationPreferencesRequest:(NSArray *)notificationPreferencesRequest __attribute__((swift_name("updateNotificationPreferences(notificationPreferencesRequest:)"))); + +/** + * Update a users notification settings. This will enable or disable push, sms, and or email notifications from the selected business. + * + * This method is used by the Native artifact when dealing with object body params + */ +- (KASCCFlow *> *)updateNotificationPreferencesMethods:(NSDictionary *)methods __attribute__((swift_name("updateNotificationPreferences(methods:)"))); +@property (readonly) KASCCFlow *> *updateNotificationPreferencesState __attribute__((swift_name("updateNotificationPreferencesState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UpdateNotificationPreferencesApi.Companion"))) +@interface KASCUpdateNotificationPreferencesApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUpdateNotificationPreferencesApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * The business who these settings this affect. This is not required when updating notification settings. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationBusinessPayload__"))) +@interface KASCNotificationBusinessPayload__ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name __attribute__((swift_name("init(id:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCNotificationBusinessPayload__Companion *companion __attribute__((swift_name("companion"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (KASCNotificationBusinessPayload__ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:name:)"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationBusinessPayload__.Companion"))) +@interface KASCNotificationBusinessPayload__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCNotificationBusinessPayload__Companion *shared __attribute__((swift_name("shared"))); + +/** + * The business who these settings this affect. This is not required when updating notification settings. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsData__"))) +@interface KASCNotificationSettingsData__ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id business:(KASCNotificationBusinessPayload__ * _Nullable)business allowEmail:(KASCBoolean * _Nullable)allowEmail allowSms:(KASCBoolean * _Nullable)allowSms allowPush:(KASCBoolean * _Nullable)allowPush __attribute__((swift_name("init(id:business:allowEmail:allowSms:allowPush:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCNotificationSettingsData__Companion *companion __attribute__((swift_name("companion"))); +- (KASCNotificationSettingsData__ *)doCopyId:(NSString * _Nullable)id business:(KASCNotificationBusinessPayload__ * _Nullable)business allowEmail:(KASCBoolean * _Nullable)allowEmail allowSms:(KASCBoolean * _Nullable)allowSms allowPush:(KASCBoolean * _Nullable)allowPush __attribute__((swift_name("doCopy(id:business:allowEmail:allowSms:allowPush:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCBoolean * _Nullable allowEmail __attribute__((swift_name("allowEmail"))); +@property (readonly) KASCBoolean * _Nullable allowPush __attribute__((swift_name("allowPush"))); +@property (readonly) KASCBoolean * _Nullable allowSms __attribute__((swift_name("allowSms"))); +@property (readonly) KASCNotificationBusinessPayload__ * _Nullable business __attribute__((swift_name("business"))); + +/** The notification settings id. This is not required when updating notification settings. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsData__.Companion"))) +@interface KASCNotificationSettingsData__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCNotificationSettingsData__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsModel__"))) +@interface KASCNotificationSettingsModel__ : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCNotificationSettingsModel__Companion *companion __attribute__((swift_name("companion"))); +- (KASCNotificationSettingsModel__ *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("NotificationSettingsModel__.Companion"))) +@interface KASCNotificationSettingsModel__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCNotificationSettingsModel__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get user products list by specific business [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessProductsApi"))) +@interface KASCUserBusinessProductsApi : KASCApi + +/** + * Get user products list by specific business [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get user products list by specific business [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserBusinessProductsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get user products list by specific business + */ +- (KASCCFlow *> *)getUserBusinessProductsBusinessId:(NSString *)businessId __attribute__((swift_name("getUserBusinessProducts(businessId:)"))); +@property (readonly) KASCCFlow *> *userBusinessProductsState __attribute__((swift_name("userBusinessProductsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessProductsApi.Companion"))) +@interface KASCUserBusinessProductsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessProductsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images_____"))) +@interface KASCImages_____ : KASCBase +- (instancetype)initWithPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(path:large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImages_____Companion *companion __attribute__((swift_name("companion"))); +- (KASCImages_____ *)doCopyPath:(NSString * _Nullable)path large:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(path:large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable path __attribute__((swift_name("path"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Images_____.Companion"))) +@interface KASCImages_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImages_____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language___________________________"))) +@interface KASCLanguage___________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage___________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage___________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language___________________________.Companion"))) +@interface KASCLanguage___________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage___________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages_____"))) +@interface KASCLanguages_____ : KASCBase +- (instancetype)initWithLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage___________________________ * _Nullable)language __attribute__((swift_name("init(languageId:title:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguages_____Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguages_____ *)doCopyLanguageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description language:(KASCLanguage___________________________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCLanguage___________________________ * _Nullable language __attribute__((swift_name("language"))); +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Languages_____.Companion"))) +@interface KASCLanguages_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguages_____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product_____"))) +@interface KASCProduct_____ : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("init(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCProduct_____Companion *companion __attribute__((swift_name("companion"))); +- (KASCProduct_____ *)doCopyId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description images:(NSArray * _Nullable)images productSku:(NSString * _Nullable)productSku actualPrice:(KASCFloat * _Nullable)actualPrice realPrice:(KASCFloat * _Nullable)realPrice termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link productLanguages:(NSArray * _Nullable)productLanguages __attribute__((swift_name("doCopy(id:title:description:images:productSku:actualPrice:realPrice:termsConditions:link:productLanguages:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCFloat * _Nullable actualPrice __attribute__((swift_name("actualPrice"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) NSArray * _Nullable productLanguages __attribute__((swift_name("productLanguages"))); +@property (readonly) NSString * _Nullable productSku __attribute__((swift_name("productSku"))); +@property (readonly) KASCFloat * _Nullable realPrice __attribute__((swift_name("realPrice"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Product_____.Companion"))) +@interface KASCProduct_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCProduct_____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProductsIncluded_"))) +@interface KASCUserProductsIncluded_ : KASCBase +- (instancetype)initWithProducts:(NSArray * _Nullable)products __attribute__((swift_name("init(products:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserProductsIncluded_Companion *companion __attribute__((swift_name("companion"))); +- (KASCUserProductsIncluded_ *)doCopyProducts:(NSArray * _Nullable)products __attribute__((swift_name("doCopy(products:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable products __attribute__((swift_name("products"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProductsIncluded_.Companion"))) +@interface KASCUserProductsIncluded_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProductsIncluded_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Product model class containing user product list + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProductsModel_"))) +@interface KASCUserProductsModel_ : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel_________________ * _Nullable)data included:(KASCUserProductsIncluded_ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProductsModel_Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Product model class containing user product list + */ +- (KASCUserProductsModel_ *)doCopyData:(KASCUserProfileDataModel_________________ * _Nullable)data included:(KASCUserProductsIncluded_ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Product model class containing user product list + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Product model class containing user product list + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Product model class containing user product list + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user data */ +@property (readonly) KASCUserProfileDataModel_________________ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains products available to this user */ +@property (readonly) KASCUserProductsIncluded_ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Product model class containing user product list + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProductsModel_.Companion"))) +@interface KASCUserProductsModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Product model class containing user product list + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProductsModel_Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Product model class containing user product list + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_________________"))) +@interface KASCUserProfileDataModel_________________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel_________________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel_________________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel_________________.Companion"))) +@interface KASCUserProfileDataModel_________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel_________________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of used coupons for this user. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserUsedCouponsApi"))) +@interface KASCUserUsedCouponsApi : KASCApi + +/** + * Get a list of used coupons for this user. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of used coupons for this user. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserUsedCouponsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of used coupons for this user. + */ +- (KASCCFlow *> *)getUserUsedCoupons __attribute__((swift_name("getUserUsedCoupons()"))); +@property (readonly) KASCCFlow *> *userUsedCouponsState __attribute__((swift_name("userUsedCouponsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserUsedCouponsApi.Companion"))) +@interface KASCUserUsedCouponsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserUsedCouponsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CouponModel_"))) +@interface KASCCouponModel_ : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description termsConditions:(NSString * _Nullable)termsConditions qrcode:(NSString * _Nullable)qrcode couponLocked:(KASCBoolean * _Nullable)couponLocked couponRedeemed:(KASCBoolean * _Nullable)couponRedeemed couponType:(NSString * _Nullable)couponType expiresAt:(NSString * _Nullable)expiresAt offer:(KASCOfferModel_____ * _Nullable)offer __attribute__((swift_name("init(id:title:description:termsConditions:qrcode:couponLocked:couponRedeemed:couponType:expiresAt:offer:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCCouponModel_Companion *companion __attribute__((swift_name("companion"))); +- (KASCCouponModel_ *)doCopyId:(KASCInt * _Nullable)id title:(NSString * _Nullable)title description:(NSString * _Nullable)description termsConditions:(NSString * _Nullable)termsConditions qrcode:(NSString * _Nullable)qrcode couponLocked:(KASCBoolean * _Nullable)couponLocked couponRedeemed:(KASCBoolean * _Nullable)couponRedeemed couponType:(NSString * _Nullable)couponType expiresAt:(NSString * _Nullable)expiresAt offer:(KASCOfferModel_____ * _Nullable)offer __attribute__((swift_name("doCopy(id:title:description:termsConditions:qrcode:couponLocked:couponRedeemed:couponType:expiresAt:offer:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCBoolean * _Nullable couponLocked __attribute__((swift_name("couponLocked"))); +@property (readonly) KASCBoolean * _Nullable couponRedeemed __attribute__((swift_name("couponRedeemed"))); +@property (readonly) NSString * _Nullable couponType __attribute__((swift_name("couponType"))); + +/** The coupon description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); + +/** A unique ID identifying this coupon */ +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCOfferModel_____ * _Nullable offer __attribute__((swift_name("offer"))); +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** The terms and conditions attached to this coupon. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The coupon title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CouponModel_.Companion"))) +@interface KASCCouponModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCouponModel_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_______________"))) +@interface KASCImage_______________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage_______________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage_______________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_______________.Companion"))) +@interface KASCImage_______________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage_______________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language____________________________"))) +@interface KASCLanguage____________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage____________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage____________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language____________________________.Companion"))) +@interface KASCLanguage____________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage____________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction_____"))) +@interface KASCOfferAction_____ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferAction_____Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferAction_____ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction_____.Companion"))) +@interface KASCOfferAction_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferAction_____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel_____"))) +@interface KASCOfferModel_____ : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCOfferModel_____Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferModel_____ *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this offer. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** Whether this offer must be claimed on a mobile app before being used in store. */ +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The offer description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this offer. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isCouponRedeemed __attribute__((swift_name("isCouponRedeemed"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this offer. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** The maximum purchase amount for this offer to be applied. */ +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); + +/** The minimum purchase amount for this offer to be applied */ +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); + +/** The multiplication factor of this offer. This only applies to Point Multiplier offers. */ +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this offer ever expires or not. If false, this offer is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this offer into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); + +/** The amount of points required for this offer to be applied. Only used for Convertible Coupons */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this offer */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this offer. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The offer title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This can be a free product, dollar based discount, percentage based discount, point multiplier, bonus points, and free shipping. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel_____.Companion"))) +@interface KASCOfferModel_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferModel_____Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this offer. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation_____"))) +@interface KASCOfferTranslation_____ : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage____________________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferTranslation_____Companion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this offer. + */ +- (KASCOfferTranslation_____ *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage____________________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))); + +/** + * A language translation of this offer. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this offer. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this offer. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** where is this coupon available at. */ +@property (readonly) NSString * _Nullable couponAvailableAt __attribute__((swift_name("couponAvailableAt"))); + +/** The translated coupon description. */ +@property (readonly) NSString * _Nullable couponDescription __attribute__((swift_name("couponDescription"))); + +/** The language appropriate link of this coupon. */ +@property (readonly) NSString * _Nullable couponLink __attribute__((swift_name("couponLink"))); + +/** The translated coupon terms and conditions. */ +@property (readonly) NSString * _Nullable couponTermsConditions __attribute__((swift_name("couponTermsConditions"))); + +/** The translated coupon title. */ +@property (readonly) NSString * _Nullable couponTitle __attribute__((swift_name("couponTitle"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage____________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated offer description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this offer. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated offer terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated offer title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this offer. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation_____.Companion"))) +@interface KASCOfferTranslation_____Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this offer. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferTranslation_____Companion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this offer. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserCouponsModel_"))) +@interface KASCUserCouponsModel_ : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserCouponsModel_Companion *companion __attribute__((swift_name("companion"))); +- (KASCUserCouponsModel_ *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains a list of all coupons available to this user */ +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserCouponsModel_.Companion"))) +@interface KASCUserCouponsModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserCouponsModel_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserAuthenticationApi"))) +@interface KASCUserAuthenticationApi : KASCApi +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserAuthenticationApiCompanion *companion __attribute__((swift_name("companion"))); +- (KASCCFlow *> *)authenticateUserUsername:(NSString *)username password:(NSString *)password __attribute__((swift_name("authenticateUser(username:password:)"))); +@property (readonly) KASCCFlow *> *userAuthenticationState __attribute__((swift_name("userAuthenticationState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserAuthenticationApi.Companion"))) +@interface KASCUserAuthenticationApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserAuthenticationApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Represents a successful user authentication request. + * @property accessToken The access token created for this session. Expires in 24 hours + * @property refreshToken The refresh token created this session. Expires in 30 days + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserAuthenticationModel"))) +@interface KASCUserAuthenticationModel : KASCModel +- (instancetype)initWithTokenType:(NSString * _Nullable)tokenType expiresIn:(KASCInt * _Nullable)expiresIn accessToken:(NSString * _Nullable)accessToken refreshToken:(NSString * _Nullable)refreshToken __attribute__((swift_name("init(tokenType:expiresIn:accessToken:refreshToken:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserAuthenticationModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a successful user authentication request. + * @property accessToken The access token created for this session. Expires in 24 hours + * @property refreshToken The refresh token created this session. Expires in 30 days + */ +- (KASCUserAuthenticationModel *)doCopyTokenType:(NSString * _Nullable)tokenType expiresIn:(KASCInt * _Nullable)expiresIn accessToken:(NSString * _Nullable)accessToken refreshToken:(NSString * _Nullable)refreshToken __attribute__((swift_name("doCopy(tokenType:expiresIn:accessToken:refreshToken:)"))); + +/** + * Represents a successful user authentication request. + * @property accessToken The access token created for this session. Expires in 24 hours + * @property refreshToken The refresh token created this session. Expires in 30 days + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a successful user authentication request. + * @property accessToken The access token created for this session. Expires in 24 hours + * @property refreshToken The refresh token created this session. Expires in 30 days + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a successful user authentication request. + * @property accessToken The access token created for this session. Expires in 24 hours + * @property refreshToken The refresh token created this session. Expires in 30 days + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable accessToken __attribute__((swift_name("accessToken"))); +@property (readonly) KASCInt * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); +@property (readonly) NSString * _Nullable refreshToken __attribute__((swift_name("refreshToken"))); +@property (readonly) NSString * _Nullable tokenType __attribute__((swift_name("tokenType"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserAuthenticationModel.Companion"))) +@interface KASCUserAuthenticationModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserAuthenticationModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@property (readonly) NSString *ACCESS_TOKEN __attribute__((swift_name("ACCESS_TOKEN"))); +@property (readonly) NSString *REFRESH_TOKEN __attribute__((swift_name("REFRESH_TOKEN"))); +@end + + +/** + * Get a list of frequent buyer programs for this business [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramsApi"))) +@interface KASCFrequentBuyerProgramsApi : KASCApi + +/** + * Get a list of frequent buyer programs for this business [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of frequent buyer programs for this business [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCFrequentBuyerProgramsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of frequent buyer programs for this business + */ +- (KASCCFlow *> *)getFrequentBuyerPrograms __attribute__((swift_name("getFrequentBuyerPrograms()"))); +@property (readonly) KASCCFlow *> *frequentBuyerProgramsState __attribute__((swift_name("frequentBuyerProgramsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramsApi.Companion"))) +@interface KASCFrequentBuyerProgramsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCFrequentBuyerProgramsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramModel_"))) +@interface KASCFrequentBuyerProgramModel_ : KASCModel +- (instancetype)initWithId:(KASCLong * _Nullable)id enabled:(KASCBoolean * _Nullable)enabled title:(NSString * _Nullable)title buyUnits:(KASCLong * _Nullable)buyUnits getUnits:(KASCLong * _Nullable)getUnits resetInterval:(KASCLong * _Nullable)resetInterval createdAt:(NSString * _Nullable)createdAt __attribute__((swift_name("init(id:enabled:title:buyUnits:getUnits:resetInterval:createdAt:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCFrequentBuyerProgramModel_Companion *companion __attribute__((swift_name("companion"))); +- (KASCFrequentBuyerProgramModel_ *)doCopyId:(KASCLong * _Nullable)id enabled:(KASCBoolean * _Nullable)enabled title:(NSString * _Nullable)title buyUnits:(KASCLong * _Nullable)buyUnits getUnits:(KASCLong * _Nullable)getUnits resetInterval:(KASCLong * _Nullable)resetInterval createdAt:(NSString * _Nullable)createdAt __attribute__((swift_name("doCopy(id:enabled:title:buyUnits:getUnits:resetInterval:createdAt:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCLong * _Nullable buyUnits __attribute__((swift_name("buyUnits"))); +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); +@property (readonly) KASCLong * _Nullable getUnits __attribute__((swift_name("getUnits"))); +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCLong * _Nullable resetInterval __attribute__((swift_name("resetInterval"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramModel_.Companion"))) +@interface KASCFrequentBuyerProgramModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCFrequentBuyerProgramModel_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramsIncluded_"))) +@interface KASCFrequentBuyerProgramsIncluded_ : KASCBase +- (instancetype)initWithFrequentBuyerPrograms:(NSArray * _Nullable)frequentBuyerPrograms __attribute__((swift_name("init(frequentBuyerPrograms:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCFrequentBuyerProgramsIncluded_Companion *companion __attribute__((swift_name("companion"))); +- (KASCFrequentBuyerProgramsIncluded_ *)doCopyFrequentBuyerPrograms:(NSArray * _Nullable)frequentBuyerPrograms __attribute__((swift_name("doCopy(frequentBuyerPrograms:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable frequentBuyerPrograms __attribute__((swift_name("frequentBuyerPrograms"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramsIncluded_.Companion"))) +@interface KASCFrequentBuyerProgramsIncluded_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCFrequentBuyerProgramsIncluded_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Frequent buyer programs for this business + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramsModel_"))) +@interface KASCFrequentBuyerProgramsModel_ : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel__________________ * _Nullable)data included:(KASCFrequentBuyerProgramsIncluded_ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCFrequentBuyerProgramsModel_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Frequent buyer programs for this business + */ +- (KASCFrequentBuyerProgramsModel_ *)doCopyData:(KASCUserProfileDataModel__________________ * _Nullable)data included:(KASCFrequentBuyerProgramsIncluded_ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * Frequent buyer programs for this business + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Frequent buyer programs for this business + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Frequent buyer programs for this business + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user data */ +@property (readonly) KASCUserProfileDataModel__________________ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains frequent buyer programs */ +@property (readonly) KASCFrequentBuyerProgramsIncluded_ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * Frequent buyer programs for this business + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FrequentBuyerProgramsModel_.Companion"))) +@interface KASCFrequentBuyerProgramsModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Frequent buyer programs for this business + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCFrequentBuyerProgramsModel_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Frequent buyer programs for this business + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel__________________"))) +@interface KASCUserProfileDataModel__________________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel__________________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel__________________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel__________________.Companion"))) +@interface KASCUserProfileDataModel__________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel__________________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Recall a transfer. This could be a points transfer, e-wallet transfer, or a gift card [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferRecallApi"))) +@interface KASCTransferRecallApi : KASCApi + +/** + * Recall a transfer. This could be a points transfer, e-wallet transfer, or a gift card [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Recall a transfer. This could be a points transfer, e-wallet transfer, or a gift card [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCTransferRecallApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Recall a transfer. This could be a points transfer, e-wallet transfer, or a gift card + */ +- (KASCCFlow *> *)recallTransferRecallId:(NSString *)recallId __attribute__((swift_name("recallTransfer(recallId:)"))); +@property (readonly) KASCCFlow *> *transferRecallState __attribute__((swift_name("transferRecallState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferRecallApi.Companion"))) +@interface KASCTransferRecallApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferRecallApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image________________"))) +@interface KASCImage________________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage________________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image________________.Companion"))) +@interface KASCImage________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_____________________________"))) +@interface KASCLanguage_____________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_____________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_____________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_____________________________.Companion"))) +@interface KASCLanguage_____________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_____________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction______"))) +@interface KASCOfferAction______ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferAction______Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferAction______ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction______.Companion"))) +@interface KASCOfferAction______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferAction______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel______"))) +@interface KASCOfferModel______ : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCOfferModel______Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferModel______ *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this offer. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** Whether this offer must be claimed on a mobile app before being used in store. */ +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The offer description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this offer. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isCouponRedeemed __attribute__((swift_name("isCouponRedeemed"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this offer. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** The maximum purchase amount for this offer to be applied. */ +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); + +/** The minimum purchase amount for this offer to be applied */ +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); + +/** The multiplication factor of this offer. This only applies to Point Multiplier offers. */ +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this offer ever expires or not. If false, this offer is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this offer into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); + +/** The amount of points required for this offer to be applied. Only used for Convertible Coupons */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this offer */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this offer. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The offer title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This can be a free product, dollar based discount, percentage based discount, point multiplier, bonus points, and free shipping. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel______.Companion"))) +@interface KASCOfferModel______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferModel______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this offer. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation______"))) +@interface KASCOfferTranslation______ : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage_____________________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferTranslation______Companion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this offer. + */ +- (KASCOfferTranslation______ *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage_____________________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))); + +/** + * A language translation of this offer. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this offer. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this offer. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** where is this coupon available at. */ +@property (readonly) NSString * _Nullable couponAvailableAt __attribute__((swift_name("couponAvailableAt"))); + +/** The translated coupon description. */ +@property (readonly) NSString * _Nullable couponDescription __attribute__((swift_name("couponDescription"))); + +/** The language appropriate link of this coupon. */ +@property (readonly) NSString * _Nullable couponLink __attribute__((swift_name("couponLink"))); + +/** The translated coupon terms and conditions. */ +@property (readonly) NSString * _Nullable couponTermsConditions __attribute__((swift_name("couponTermsConditions"))); + +/** The translated coupon title. */ +@property (readonly) NSString * _Nullable couponTitle __attribute__((swift_name("couponTitle"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_____________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated offer description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this offer. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated offer terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated offer title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this offer. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation______.Companion"))) +@interface KASCOfferTranslation______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this offer. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferTranslation______Companion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this offer. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Contains the result of a transfer action. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferActionResultModel_"))) +@interface KASCTransferActionResultModel_ : KASCModel +- (instancetype)initWithData:(KASCTransferMessage_ * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCTransferActionResultModel_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Contains the result of a transfer action. + */ +- (KASCTransferActionResultModel_ *)doCopyData:(KASCTransferMessage_ * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * Contains the result of a transfer action. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Contains the result of a transfer action. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Contains the result of a transfer action. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCTransferMessage_ * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * Contains the result of a transfer action. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferActionResultModel_.Companion"))) +@interface KASCTransferActionResultModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Contains the result of a transfer action. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferActionResultModel_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Contains the result of a transfer action. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessage_"))) +@interface KASCTransferMessage_ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id typeId:(KASCLong * _Nullable)typeId type:(NSString * _Nullable)type description:(NSString * _Nullable)description points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount hidden:(KASCBoolean * _Nullable)hidden createdAt:(NSString * _Nullable)createdAt offer:(KASCOfferModel______ * _Nullable)offer giftCardQueue:(KASCTransferMessageGiftCardQueue_ * _Nullable)giftCardQueue actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:typeId:type:description:points:amount:hidden:createdAt:offer:giftCardQueue:actions:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransferMessage_Companion *companion __attribute__((swift_name("companion"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (KASCTransferMessage_ *)doCopyId:(KASCLong * _Nullable)id typeId:(KASCLong * _Nullable)typeId type:(NSString * _Nullable)type description:(NSString * _Nullable)description points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount hidden:(KASCBoolean * _Nullable)hidden createdAt:(NSString * _Nullable)createdAt offer:(KASCOfferModel______ * _Nullable)offer giftCardQueue:(KASCTransferMessageGiftCardQueue_ * _Nullable)giftCardQueue actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:typeId:type:description:points:amount:hidden:createdAt:offer:giftCardQueue:actions:)"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** The amount in $ sent in this transfer. */ +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); + +/** The orignal send date of this transfer. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** The description of this transfer. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCTransferMessageGiftCardQueue_ * _Nullable giftCardQueue __attribute__((swift_name("giftCardQueue"))); +@property (readonly) KASCBoolean * _Nullable hidden __attribute__((swift_name("hidden"))); + +/** The unique ID of this transfer. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** The gift card in this transfer if applicable. Gift cards are an offer sub-type in Kangaroo. */ +@property (readonly) KASCOfferModel______ * _Nullable offer __attribute__((swift_name("offer"))); + +/** The amount of points sent in this transfer. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** A string representation of this transfer type. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); + +/** The type ID of this transfer. */ +@property (readonly) KASCLong * _Nullable typeId __attribute__((swift_name("typeId"))); +@end + + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessage_.Companion"))) +@interface KASCTransferMessage_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferMessage_Companion *shared __attribute__((swift_name("shared"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageActions_"))) +@interface KASCTransferMessageActions_ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransferMessageActions_Companion *companion __attribute__((swift_name("companion"))); +- (KASCTransferMessageActions_ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The action type. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageActions_.Companion"))) +@interface KASCTransferMessageActions_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferMessageActions_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageGiftCardQueue_"))) +@interface KASCTransferMessageGiftCardQueue_ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id enabled:(KASCBoolean * _Nullable)enabled senderName:(NSString * _Nullable)senderName recipientName:(NSString * _Nullable)recipientName emailPhone:(NSString * _Nullable)emailPhone points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount createdAt:(NSString * _Nullable)createdAt scheduledAt:(NSString * _Nullable)scheduledAt __attribute__((swift_name("init(id:enabled:senderName:recipientName:emailPhone:points:amount:createdAt:scheduledAt:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransferMessageGiftCardQueue_Companion *companion __attribute__((swift_name("companion"))); +- (KASCTransferMessageGiftCardQueue_ *)doCopyId:(KASCLong * _Nullable)id enabled:(KASCBoolean * _Nullable)enabled senderName:(NSString * _Nullable)senderName recipientName:(NSString * _Nullable)recipientName emailPhone:(NSString * _Nullable)emailPhone points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount createdAt:(NSString * _Nullable)createdAt scheduledAt:(NSString * _Nullable)scheduledAt __attribute__((swift_name("doCopy(id:enabled:senderName:recipientName:emailPhone:points:amount:createdAt:scheduledAt:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount in $ sent in this transfer. */ +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); + +/** The orignal creation date of this transfer. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** The phone number or email address that this transfer was sent to. */ +@property (readonly) NSString * _Nullable emailPhone __attribute__((swift_name("emailPhone"))); + +/** Whether this item is enabled. Usually true. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The unique ID of this gift_card_queue */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** The amount of points sent in this transfer. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The name of the recipient of this transfer. */ +@property (readonly) NSString * _Nullable recipientName __attribute__((swift_name("recipientName"))); + +/** The original scheduled delivery date of this transfer. */ +@property (readonly) NSString * _Nullable scheduledAt __attribute__((swift_name("scheduledAt"))); + +/** The name of the sender of this transfer. */ +@property (readonly) NSString * _Nullable senderName __attribute__((swift_name("senderName"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageGiftCardQueue_.Companion"))) +@interface KASCTransferMessageGiftCardQueue_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferMessageGiftCardQueue_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get this users campaign messages. Campaign messages are messages sent to this user from the business using the marketing engine. These might also be delivered by sms, email, or push notifications. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CampaignMessagesApi"))) +@interface KASCCampaignMessagesApi : KASCApi + +/** + * Get this users campaign messages. Campaign messages are messages sent to this user from the business using the marketing engine. These might also be delivered by sms, email, or push notifications. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get this users campaign messages. Campaign messages are messages sent to this user from the business using the marketing engine. These might also be delivered by sms, email, or push notifications. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCCampaignMessagesApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get this users campaign messages. Campaign messages are messages sent to this user from the business using the marketing engine. These might also be delivered by sms, email, or push notifications. + */ +- (KASCCFlow *> *)getCampaignMessagesBusinessId:(NSString *)businessId __attribute__((swift_name("getCampaignMessages(businessId:)"))); +@property (readonly) KASCCFlow *> *campaignMessagesState __attribute__((swift_name("campaignMessagesState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CampaignMessagesApi.Companion"))) +@interface KASCCampaignMessagesApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCampaignMessagesApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory________"))) +@interface KASCBusinessCategory________ : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("init(name:icon:code:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessCategory________Companion *companion __attribute__((swift_name("companion"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (KASCBusinessCategory________ *)doCopyName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("doCopy(name:icon:code:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique ategory code for this category */ +@property (readonly) NSString * _Nullable code __attribute__((swift_name("code"))); + +/** Url to this category's icon */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** Name of this category */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory________.Companion"))) +@interface KASCBusinessCategory________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessCategory________Companion *shared __attribute__((swift_name("shared"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData________"))) +@interface KASCBusinessData________ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage_________________ * _Nullable)logo logoTransparentBackground:(KASCImage_________________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage_________________ * _Nullable)coverPhoto category:(KASCBusinessCategory________ * _Nullable)category __attribute__((swift_name("init(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessData________Companion *companion __attribute__((swift_name("companion"))); + +/** + * Business profile data + */ +- (KASCBusinessData________ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage_________________ * _Nullable)logo logoTransparentBackground:(KASCImage_________________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage_________________ * _Nullable)coverPhoto category:(KASCBusinessCategory________ * _Nullable)category __attribute__((swift_name("doCopy(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))); + +/** + * Business profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** General about text for the business */ +@property (readonly) NSString * _Nullable about __attribute__((swift_name("about"))); +@property (readonly) KASCBusinessCategory________ * _Nullable category __attribute__((swift_name("category"))); + +/** Whether this is a conglomerate business. Conglomerate businesses are umbrellas for multiple business' in Kangaroo */ +@property (readonly) NSString * _Nullable conglomerate __attribute__((swift_name("conglomerate"))); +@property (readonly) KASCImage_________________ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique business ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage_________________ * _Nullable logo __attribute__((swift_name("logo"))); +@property (readonly) KASCImage_________________ * _Nullable logoTransparentBackground __attribute__((swift_name("logoTransparentBackground"))); + +/** The manner in which this business rewards its customers. This can be by purchase amount of by visit to the store */ +@property (readonly) NSString * _Nullable loyaltyType __attribute__((swift_name("loyaltyType"))); + +/** The name of this business */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** Whether this is a white label business. White label business' don't appear in the Kangaroo Mobile Customer app, as they usually have their own app. */ +@property (readonly) NSString * _Nullable whiteLabel __attribute__((swift_name("whiteLabel"))); +@end + + +/** + * Business profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData________.Companion"))) +@interface KASCBusinessData________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessData________Companion *shared __attribute__((swift_name("shared"))); + +/** + * Business profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * The core campaign object for this campaign. This might include data such as the original html content of the campaign, sms or push data, or offers and rewards attached to this campaign. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Campaign"))) +@interface KASCCampaign : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id subject:(NSString * _Nullable)subject htmlContent:(NSString * _Nullable)htmlContent plainContent:(NSString * _Nullable)plainContent pushTitle:(NSString * _Nullable)pushTitle pushBody:(NSString * _Nullable)pushBody pushLink:(NSString * _Nullable)pushLink pushImage:(NSString * _Nullable)pushImage offers:(NSArray * _Nullable)offers business:(KASCBusinessData________ * _Nullable)business __attribute__((swift_name("init(id:subject:htmlContent:plainContent:pushTitle:pushBody:pushLink:pushImage:offers:business:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCCampaignCompanion *companion __attribute__((swift_name("companion"))); + +/** + * The core campaign object for this campaign. This might include data such as the original html content of the campaign, sms or push data, or offers and rewards attached to this campaign. + */ +- (KASCCampaign *)doCopyId:(KASCLong * _Nullable)id subject:(NSString * _Nullable)subject htmlContent:(NSString * _Nullable)htmlContent plainContent:(NSString * _Nullable)plainContent pushTitle:(NSString * _Nullable)pushTitle pushBody:(NSString * _Nullable)pushBody pushLink:(NSString * _Nullable)pushLink pushImage:(NSString * _Nullable)pushImage offers:(NSArray * _Nullable)offers business:(KASCBusinessData________ * _Nullable)business __attribute__((swift_name("doCopy(id:subject:htmlContent:plainContent:pushTitle:pushBody:pushLink:pushImage:offers:business:)"))); + +/** + * The core campaign object for this campaign. This might include data such as the original html content of the campaign, sms or push data, or offers and rewards attached to this campaign. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * The core campaign object for this campaign. This might include data such as the original html content of the campaign, sms or push data, or offers and rewards attached to this campaign. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * The core campaign object for this campaign. This might include data such as the original html content of the campaign, sms or push data, or offers and rewards attached to this campaign. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCBusinessData________ * _Nullable business __attribute__((swift_name("business"))); +@property (readonly) NSString * _Nullable htmlContent __attribute__((swift_name("htmlContent"))); +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSArray * _Nullable offers __attribute__((swift_name("offers"))); +@property (readonly) NSString * _Nullable plainContent __attribute__((swift_name("plainContent"))); +@property (readonly) NSString * _Nullable pushBody __attribute__((swift_name("pushBody"))); +@property (readonly) NSString * _Nullable pushImage __attribute__((swift_name("pushImage"))); +@property (readonly) NSString * _Nullable pushLink __attribute__((swift_name("pushLink"))); +@property (readonly) NSString * _Nullable pushTitle __attribute__((swift_name("pushTitle"))); +@property (readonly) NSString * _Nullable subject __attribute__((swift_name("subject"))); +@end + + +/** + * The core campaign object for this campaign. This might include data such as the original html content of the campaign, sms or push data, or offers and rewards attached to this campaign. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Campaign.Companion"))) +@interface KASCCampaignCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * The core campaign object for this campaign. This might include data such as the original html content of the campaign, sms or push data, or offers and rewards attached to this campaign. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCampaignCompanion *shared __attribute__((swift_name("shared"))); + +/** + * The core campaign object for this campaign. This might include data such as the original html content of the campaign, sms or push data, or offers and rewards attached to this campaign. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Campaign Message. These are sent to the user by the business through Kangaroo's Marketing module. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CampaignMessage"))) +@interface KASCCampaignMessage : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id cellEmail:(KASCInt * _Nullable)cellEmail subject:(NSString * _Nullable)subject sentAt:(NSString * _Nullable)sentAt message:(NSString * _Nullable)message campaign:(KASCCampaign * _Nullable)campaign __attribute__((swift_name("init(id:cellEmail:subject:sentAt:message:campaign:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCCampaignMessageCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Campaign Message. These are sent to the user by the business through Kangaroo's Marketing module. + */ +- (KASCCampaignMessage *)doCopyId:(NSString * _Nullable)id cellEmail:(KASCInt * _Nullable)cellEmail subject:(NSString * _Nullable)subject sentAt:(NSString * _Nullable)sentAt message:(NSString * _Nullable)message campaign:(KASCCampaign * _Nullable)campaign __attribute__((swift_name("doCopy(id:cellEmail:subject:sentAt:message:campaign:)"))); + +/** + * Campaign Message. These are sent to the user by the business through Kangaroo's Marketing module. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Campaign Message. These are sent to the user by the business through Kangaroo's Marketing module. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Campaign Message. These are sent to the user by the business through Kangaroo's Marketing module. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCCampaign * _Nullable campaign __attribute__((swift_name("campaign"))); + +/** The original delivery method for this campaign */ +@property (readonly) KASCInt * _Nullable cellEmail __attribute__((swift_name("cellEmail"))); + +/** Unique campaign ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** A short / simple message for this campaign. */ +@property (readonly) NSString * _Nullable message __attribute__((swift_name("message"))); + +/** The original send date of this campaign. */ +@property (readonly) NSString * _Nullable sentAt __attribute__((swift_name("sentAt"))); + +/** The title for this campaign. */ +@property (readonly) NSString * _Nullable subject __attribute__((swift_name("subject"))); +@end + + +/** + * Campaign Message. These are sent to the user by the business through Kangaroo's Marketing module. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CampaignMessage.Companion"))) +@interface KASCCampaignMessageCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Campaign Message. These are sent to the user by the business through Kangaroo's Marketing module. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCampaignMessageCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Campaign Message. These are sent to the user by the business through Kangaroo's Marketing module. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Contains a list of campaign messages sent to this user + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CampaignMessagesModel"))) +@interface KASCCampaignMessagesModel : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCCampaignMessagesModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Contains a list of campaign messages sent to this user + */ +- (KASCCampaignMessagesModel *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * Contains a list of campaign messages sent to this user + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Contains a list of campaign messages sent to this user + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Contains a list of campaign messages sent to this user + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** List of campaign messages. */ +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * Contains a list of campaign messages sent to this user + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CampaignMessagesModel.Companion"))) +@interface KASCCampaignMessagesModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Contains a list of campaign messages sent to this user + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCampaignMessagesModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Contains a list of campaign messages sent to this user + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_________________"))) +@interface KASCImage_________________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage_________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage_________________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_________________.Companion"))) +@interface KASCImage_________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage_________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language______________________________"))) +@interface KASCLanguage______________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage______________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage______________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language______________________________.Companion"))) +@interface KASCLanguage______________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage______________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction_______"))) +@interface KASCOfferAction_______ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferAction_______Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferAction_______ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction_______.Companion"))) +@interface KASCOfferAction_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferAction_______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel_______"))) +@interface KASCOfferModel_______ : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCOfferModel_______Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferModel_______ *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this offer. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** Whether this offer must be claimed on a mobile app before being used in store. */ +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The offer description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this offer. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isCouponRedeemed __attribute__((swift_name("isCouponRedeemed"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this offer. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** The maximum purchase amount for this offer to be applied. */ +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); + +/** The minimum purchase amount for this offer to be applied */ +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); + +/** The multiplication factor of this offer. This only applies to Point Multiplier offers. */ +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this offer ever expires or not. If false, this offer is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this offer into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); + +/** The amount of points required for this offer to be applied. Only used for Convertible Coupons */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this offer */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this offer. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The offer title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This can be a free product, dollar based discount, percentage based discount, point multiplier, bonus points, and free shipping. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel_______.Companion"))) +@interface KASCOfferModel_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferModel_______Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this offer. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation_______"))) +@interface KASCOfferTranslation_______ : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage______________________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferTranslation_______Companion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this offer. + */ +- (KASCOfferTranslation_______ *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage______________________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))); + +/** + * A language translation of this offer. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this offer. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this offer. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** where is this coupon available at. */ +@property (readonly) NSString * _Nullable couponAvailableAt __attribute__((swift_name("couponAvailableAt"))); + +/** The translated coupon description. */ +@property (readonly) NSString * _Nullable couponDescription __attribute__((swift_name("couponDescription"))); + +/** The language appropriate link of this coupon. */ +@property (readonly) NSString * _Nullable couponLink __attribute__((swift_name("couponLink"))); + +/** The translated coupon terms and conditions. */ +@property (readonly) NSString * _Nullable couponTermsConditions __attribute__((swift_name("couponTermsConditions"))); + +/** The translated coupon title. */ +@property (readonly) NSString * _Nullable couponTitle __attribute__((swift_name("couponTitle"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage______________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated offer description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this offer. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated offer terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated offer title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this offer. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation_______.Companion"))) +@interface KASCOfferTranslation_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this offer. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferTranslation_______Companion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this offer. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Reset a customer PIN. Requires both a verification code and either a phone number or email address [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserPinResetApi"))) +@interface KASCUserPinResetApi : KASCApi + +/** + * Reset a customer PIN. Requires both a verification code and either a phone number or email address [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Reset a customer PIN. Requires both a verification code and either a phone number or email address [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserPinResetApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Reset a customer PIN. Requires both a verification code and either a phone number or email address + */ +- (KASCCFlow *> *)resetPinVerificationCode:(NSString *)verificationCode pinCode:(NSString *)pinCode email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone countryCode:(NSString * _Nullable)countryCode __attribute__((swift_name("resetPin(verificationCode:pinCode:email:phone:countryCode:)"))); +@property (readonly) KASCCFlow *> *userPinResetState __attribute__((swift_name("userPinResetState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserPinResetApi.Companion"))) +@interface KASCUserPinResetApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserPinResetApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Verify a user's account [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserAccountVerificationApi"))) +@interface KASCUserAccountVerificationApi : KASCApi + +/** + * Verify a user's account [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Verify a user's account [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserAccountVerificationApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Verify a user's account + */ +- (KASCCFlow *> *)verifyAccountIntent:(NSString *)intent token:(NSString *)token email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone countryCode:(NSString * _Nullable)countryCode __attribute__((swift_name("verifyAccount(intent:token:email:phone:countryCode:)"))); +@property (readonly) KASCCFlow *> *userAccountVerificationState __attribute__((swift_name("userAccountVerificationState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserAccountVerificationApi.Companion"))) +@interface KASCUserAccountVerificationApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserAccountVerificationApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_______________________________"))) +@interface KASCLanguage_______________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_______________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_______________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_______________________________.Companion"))) +@interface KASCLanguage_______________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_______________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A referral program + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram________"))) +@interface KASCReferralProgram________ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("init(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCReferralProgram________Companion *companion __attribute__((swift_name("companion"))); + +/** + * A referral program + */ +- (KASCReferralProgram________ *)doCopyId:(KASCLong * _Nullable)id ruleName:(NSString * _Nullable)ruleName condMinAmount:(KASCDouble * _Nullable)condMinAmount refereeEarns:(KASCLong * _Nullable)refereeEarns refererEarns:(KASCLong * _Nullable)refererEarns expiresIn:(KASCLong * _Nullable)expiresIn enabled:(KASCBoolean * _Nullable)enabled linkReferralEnabled:(KASCBoolean * _Nullable)linkReferralEnabled referralLink:(NSString * _Nullable)referralLink __attribute__((swift_name("doCopy(id:ruleName:condMinAmount:refereeEarns:refererEarns:expiresIn:enabled:linkReferralEnabled:referralLink:)"))); + +/** + * A referral program + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A referral program + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A referral program + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The minimum purchawe amount required for a succesful referral. */ +@property (readonly) KASCDouble * _Nullable condMinAmount __attribute__((swift_name("condMinAmount"))); + +/** Denotes whether this referral program is currently active. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The number of days the new customer has to sign up in order for a referral to be sucessful. */ +@property (readonly) KASCLong * _Nullable expiresIn __attribute__((swift_name("expiresIn"))); + +/** The unique id of this referral program. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Denotes whether this referral program has enabled share links. Referral share links are links that the customer can send to prospective referrals. A User can sign up to the business through this link in order to complete the referral. */ +@property (readonly) KASCBoolean * _Nullable linkReferralEnabled __attribute__((swift_name("linkReferralEnabled"))); + +/** The number of points the new customer will earn. */ +@property (readonly) KASCLong * _Nullable refereeEarns __attribute__((swift_name("refereeEarns"))); + +/** The number of points the new customer who made the referral will earn. */ +@property (readonly) KASCLong * _Nullable refererEarns __attribute__((swift_name("refererEarns"))); + +/** A link that can be shared to prospective referrals. */ +@property (readonly) NSString * _Nullable referralLink __attribute__((swift_name("referralLink"))); +@property (readonly) NSString * _Nullable ruleName __attribute__((swift_name("ruleName"))); +@end + + +/** + * A referral program + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ReferralProgram________.Companion"))) +@interface KASCReferralProgram________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A referral program + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCReferralProgram________Companion *shared __attribute__((swift_name("shared"))); + +/** + * A referral program + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel_________"))) +@interface KASCTierLevel_________ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevel_________Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier level. + */ +- (KASCTierLevel_________ *)doCopyId:(KASCLong * _Nullable)id name:(NSString * _Nullable)name reachSpend:(KASCFloat * _Nullable)reachSpend reachVisits:(KASCLong * _Nullable)reachVisits reachPoints:(KASCLong * _Nullable)reachPoints icon:(NSString * _Nullable)icon tierPerks:(NSArray * _Nullable)tierPerks languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:name:reachSpend:reachVisits:reachPoints:icon:tierPerks:languages:)"))); + +/** + * Represents a single tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The icon of this tier level. */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** The ID for this tier. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** translation for each tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); + +/** The name of this tier level. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The amount of points acquired that is required to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachPoints __attribute__((swift_name("reachPoints"))); + +/** The amount of money spent required to reach this tier. */ +@property (readonly) KASCFloat * _Nullable reachSpend __attribute__((swift_name("reachSpend"))); + +/** The amount of visits made to reach this tier. */ +@property (readonly) KASCLong * _Nullable reachVisits __attribute__((swift_name("reachVisits"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable tierPerks __attribute__((swift_name("tierPerks"))); +@end + + +/** + * Represents a single tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevel_________.Companion"))) +@interface KASCTierLevel_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevel_________Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation_________"))) +@interface KASCTierLevelTranslation_________ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage_______________________________ * _Nullable)language __attribute__((swift_name("init(languageId:name:description:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierLevelTranslation_________Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierLevelTranslation_________ *)doCopyLanguageId:(KASCLong * _Nullable)languageId name:(NSString * _Nullable)name description:(NSString * _Nullable)description language:(KASCLanguage_______________________________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:name:description:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The description of this tier level as translated. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_______________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierLevelTranslation_________.Companion"))) +@interface KASCTierLevelTranslation_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierLevelTranslation_________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a single tier perk for a tier level. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk_________"))) +@interface KASCTierPerk_________ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("init(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerk_________Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (KASCTierPerk_________ *)doCopyId:(KASCLong * _Nullable)id title:(NSString * _Nullable)title tierId:(KASCLong * _Nullable)tierId offerId:(KASCLong * _Nullable)offerId punchItemId:(KASCLong * _Nullable)punchItemId enabled:(KASCBoolean * _Nullable)enabled isExpired:(KASCBoolean * _Nullable)isExpired languages:(NSArray * _Nullable)languages __attribute__((swift_name("doCopy(id:title:tierId:offerId:punchItemId:enabled:isExpired:languages:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Whether this tier perk is currently enabled or disabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The ID for this tier perk. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** Whether the offer this tier perk is currently attached to is expired or not. */ +@property (readonly) KASCBoolean * _Nullable isExpired __attribute__((swift_name("isExpired"))); + +/** The perks related to this tier level. */ +@property (readonly) NSArray * _Nullable languages __attribute__((swift_name("languages"))); +@property (readonly) KASCLong * _Nullable offerId __attribute__((swift_name("offerId"))); +@property (readonly) KASCLong * _Nullable punchItemId __attribute__((swift_name("punchItemId"))); + +/** The ID for the tier level this tier perk is related to. */ +@property (readonly) KASCLong * _Nullable tierId __attribute__((swift_name("tierId"))); + +/** The title of this tier perk. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + + +/** + * Represents a single tier perk for a tier level. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerk_________.Companion"))) +@interface KASCTierPerk_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a single tier perk for a tier level. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerk_________Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a single tier perk for a tier level. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation_________"))) +@interface KASCTierPerkTranslation_________ : KASCBase +- (instancetype)initWithLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage_______________________________ * _Nullable)language __attribute__((swift_name("init(languageId:title:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierPerkTranslation_________Companion *companion __attribute__((swift_name("companion"))); +- (KASCTierPerkTranslation_________ *)doCopyLanguageId:(KASCLong * _Nullable)languageId title:(NSString * _Nullable)title language:(KASCLanguage_______________________________ * _Nullable)language __attribute__((swift_name("doCopy(languageId:title:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_______________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of teh language. */ +@property (readonly) KASCLong * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The name of this tier level as translated. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierPerkTranslation_________.Companion"))) +@interface KASCTierPerkTranslation_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierPerkTranslation_________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress_________"))) +@interface KASCTierProgress_________ : KASCBase +- (instancetype)initWithStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("init(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTierProgress_________Companion *companion __attribute__((swift_name("companion"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (KASCTierProgress_________ *)doCopyStartDate:(NSString * _Nullable)startDate endDate:(NSString * _Nullable)endDate tierLevel:(NSString * _Nullable)tierLevel tierLevelLive:(NSString * _Nullable)tierLevelLive nextTierLevel:(NSString * _Nullable)nextTierLevel tierProgress:(KASCFloat * _Nullable)tierProgress leftPoints:(KASCLong * _Nullable)leftPoints leftAmount:(KASCFloat * _Nullable)leftAmount leftVisits:(KASCLong * _Nullable)leftVisits totalPoints:(KASCLong * _Nullable)totalPoints totalAmount:(KASCFloat * _Nullable)totalAmount totalVisits:(KASCLong * _Nullable)totalVisits __attribute__((swift_name("doCopy(startDate:endDate:tierLevel:tierLevelLive:nextTierLevel:tierProgress:leftPoints:leftAmount:leftVisits:totalPoints:totalAmount:totalVisits:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The end date for this tier session. The tier will be reset once this date is reached. */ +@property (readonly) NSString * _Nullable endDate __attribute__((swift_name("endDate"))); + +/** The amount of spend left in the user's current tier progress. Once they have acquired this many more amount of spend, they will be moved into the next tier. */ +@property (readonly) KASCFloat * _Nullable leftAmount __attribute__((swift_name("leftAmount"))); + +/** The amount of points left in the user's current tier progress. Once they have acquired this many more amount of points, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftPoints __attribute__((swift_name("leftPoints"))); + +/** The amount of visits left in the user's current tier progress. Once they have acquired this many more amount of visits, they will be moved into the next tier. */ +@property (readonly) KASCLong * _Nullable leftVisits __attribute__((swift_name("leftVisits"))); + +/** The name of the user's next tier level. */ +@property (readonly) NSString * _Nullable nextTierLevel __attribute__((swift_name("nextTierLevel"))); + +/** The start date for this tier session. */ +@property (readonly) NSString * _Nullable startDate __attribute__((swift_name("startDate"))); + +/** The name of the user's current tier level */ +@property (readonly) NSString * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** The name of the user's current tier level. Tiers are recalculated once per day, as such \"tier_level\" may not be completely up to date. */ +@property (readonly) NSString * _Nullable tierLevelLive __attribute__((swift_name("tierLevelLive"))); + +/** The users current tier progress in their \"tier_level\". This will be a number between 0 and 1. A tier progress of 0.5 means that the user has made 50% progress in their current tier. */ +@property (readonly) KASCFloat * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); + +/** Purchase amount between start_date and end_date. */ +@property (readonly) KASCFloat * _Nullable totalAmount __attribute__((swift_name("totalAmount"))); + +/** Purchase points between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalPoints __attribute__((swift_name("totalPoints"))); + +/** Purchase visits between start_date and end_date. */ +@property (readonly) KASCLong * _Nullable totalVisits __attribute__((swift_name("totalVisits"))); +@end + + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TierProgress_________.Companion"))) +@interface KASCTierProgress_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTierProgress_________Companion *shared __attribute__((swift_name("shared"))); + +/** + * Represents a users' tier progress within their current tier. This also includes other useful information about the tier such as start and end dates, as well as the next tier the user will reach. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile balance data. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance_________"))) +@interface KASCUserBalance_________ : KASCBase +- (instancetype)initWithPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("init(points:giftcard:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBalance_________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile balance data. + */ +- (KASCUserBalance_________ *)doCopyPoints:(KASCLong * _Nullable)points giftcard:(KASCDouble * _Nullable)giftcard __attribute__((swift_name("doCopy(points:giftcard:)"))); + +/** + * User Profile balance data. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile balance data. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile balance data. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount of store credit in the users' e-wallet. */ +@property (readonly) KASCDouble * _Nullable giftcard __attribute__((swift_name("giftcard"))); + +/** The number of points this user currently has. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@end + + +/** + * User Profile balance data. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBalance_________.Companion"))) +@interface KASCUserBalance_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile balance data. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBalance_________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile balance data. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel___________________"))) +@interface KASCUserProfileDataModel___________________ : KASCModel +- (instancetype)initWithId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("init(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileDataModel___________________Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileDataModel___________________ *)doCopyId:(NSString * _Nullable)id email:(NSString * _Nullable)email phone:(NSString * _Nullable)phone firstName:(NSString * _Nullable)firstName lastName:(NSString * _Nullable)lastName qrcode:(NSString * _Nullable)qrcode gender:(NSString * _Nullable)gender birthDate:(NSString * _Nullable)birthDate language:(NSString * _Nullable)language countryCode:(NSString * _Nullable)countryCode profilePhoto:(NSString * _Nullable)profilePhoto createdAt:(NSString * _Nullable)createdAt updatedAt:(NSString * _Nullable)updatedAt enabled:(KASCBoolean * _Nullable)enabled emailVerified:(KASCBoolean * _Nullable)emailVerified phoneVerified:(KASCBoolean * _Nullable)phoneVerified __attribute__((swift_name("doCopy(id:email:phone:firstName:lastName:qrcode:gender:birthDate:language:countryCode:profilePhoto:createdAt:updatedAt:enabled:emailVerified:phoneVerified:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Date of birth associated with this user. */ +@property (readonly) NSString * _Nullable birthDate __attribute__((swift_name("birthDate"))); + +/** Country code associated with this user. */ +@property (readonly) NSString * _Nullable countryCode __attribute__((swift_name("countryCode"))); + +/** Date the account for this user was created. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** Email address identifying this user. */ +@property (readonly) NSString * _Nullable email __attribute__((swift_name("email"))); + +/** Denotes whether the email address for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable emailVerified __attribute__((swift_name("emailVerified"))); + +/** Denotes whether this account has been enabled. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** First name associated with this user. */ +@property (readonly) NSString * _Nullable firstName __attribute__((swift_name("firstName"))); + +/** Gender associated with this user. */ +@property (readonly) NSString * _Nullable gender __attribute__((swift_name("gender"))); + +/** Unique user ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); + +/** Primary language assocaited with this user. */ +@property (readonly) NSString * _Nullable language __attribute__((swift_name("language"))); + +/** Last name associated with this user. */ +@property (readonly) NSString * _Nullable lastName __attribute__((swift_name("lastName"))); + +/** Phone number associated with this user. */ +@property (readonly) NSString * _Nullable phone __attribute__((swift_name("phone"))); + +/** Denotes whether the phone number for this user has been verified. */ +@property (readonly) KASCBoolean * _Nullable phoneVerified __attribute__((swift_name("phoneVerified"))); + +/** Profile photo url associated with this user. */ +@property (readonly) NSString * _Nullable profilePhoto __attribute__((swift_name("profilePhoto"))); + +/** Unique QR code identifying this user. */ +@property (readonly) NSString * _Nullable qrcode __attribute__((swift_name("qrcode"))); + +/** Date the account for this user was last updated. */ +@property (readonly) NSString * _Nullable updatedAt __attribute__((swift_name("updatedAt"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileDataModel___________________.Companion"))) +@interface KASCUserProfileDataModel___________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileDataModel___________________Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Extra user profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude________"))) +@interface KASCUserProfileInclude________ : KASCBase +- (instancetype)initWithBalance:(KASCUserBalance_________ * _Nullable)balance tierLevel:(KASCTierLevel_________ * _Nullable)tierLevel tierProgress:(KASCTierProgress_________ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("init(balance:tierLevel:tierProgress:referralPrograms:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserProfileInclude________Companion *companion __attribute__((swift_name("companion"))); + +/** + * Extra user profile data + */ +- (KASCUserProfileInclude________ *)doCopyBalance:(KASCUserBalance_________ * _Nullable)balance tierLevel:(KASCTierLevel_________ * _Nullable)tierLevel tierProgress:(KASCTierProgress_________ * _Nullable)tierProgress referralPrograms:(NSArray * _Nullable)referralPrograms __attribute__((swift_name("doCopy(balance:tierLevel:tierProgress:referralPrograms:)"))); + +/** + * Extra user profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Extra user profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Extra user profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** User Profile balance data. */ +@property (readonly) KASCUserBalance_________ * _Nullable balance __attribute__((swift_name("balance"))); + +/** A list of referral programs the user has access to. */ +@property (readonly) NSArray * _Nullable referralPrograms __attribute__((swift_name("referralPrograms"))); + +/** User's tier status. */ +@property (readonly) KASCTierLevel_________ * _Nullable tierLevel __attribute__((swift_name("tierLevel"))); + +/** User's tier progress and status. If a user's tier status is statically fixed, this will be null as they do not progress from tier to tier. */ +@property (readonly) KASCTierProgress_________ * _Nullable tierProgress __attribute__((swift_name("tierProgress"))); +@end + + +/** + * Extra user profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileInclude________.Companion"))) +@interface KASCUserProfileInclude________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Extra user profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileInclude________Companion *shared __attribute__((swift_name("shared"))); + +/** + * Extra user profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * User Profile model class containing user data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel_______"))) +@interface KASCUserProfileModel_______ : KASCModel +- (instancetype)initWithData:(KASCUserProfileDataModel___________________ * _Nullable)data included:(KASCUserProfileInclude________ * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserProfileModel_______Companion *companion __attribute__((swift_name("companion"))); + +/** + * User Profile model class containing user data + */ +- (KASCUserProfileModel_______ *)doCopyData:(KASCUserProfileDataModel___________________ * _Nullable)data included:(KASCUserProfileInclude________ * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); + +/** + * User Profile model class containing user data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * User Profile model class containing user data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * User Profile model class containing user data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains all user profile data */ +@property (readonly) KASCUserProfileDataModel___________________ * _Nullable data __attribute__((swift_name("data"))); + +/** Contains user balance data */ +@property (readonly) KASCUserProfileInclude________ * _Nullable included __attribute__((swift_name("included"))); +@end + + +/** + * User Profile model class containing user data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserProfileModel_______.Companion"))) +@interface KASCUserProfileModel_______Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * User Profile model class containing user data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserProfileModel_______Companion *shared __attribute__((swift_name("shared"))); + +/** + * User Profile model class containing user data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get the list of countries supported by Kangaroo [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CountriesApi"))) +@interface KASCCountriesApi : KASCApi + +/** + * Get the list of countries supported by Kangaroo [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get the list of countries supported by Kangaroo [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCCountriesApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get the list of countries supported by Kangaroo + */ +- (KASCCFlow *> *)getCountries __attribute__((swift_name("getCountries()"))); +@property (readonly) KASCCFlow *> *countriesState __attribute__((swift_name("countriesState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("CountriesApi.Companion"))) +@interface KASCCountriesApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCountriesApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * A list of countries supported by Kangaroo + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Countries"))) +@interface KASCCountries : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCCountriesCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A list of countries supported by Kangaroo + */ +- (KASCCountries *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * A list of countries supported by Kangaroo + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A list of countries supported by Kangaroo + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A list of countries supported by Kangaroo + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of countries supported by Kangaroo */ +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * A list of countries supported by Kangaroo + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Countries.Companion"))) +@interface KASCCountriesCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A list of countries supported by Kangaroo + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCountriesCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A list of countries supported by Kangaroo + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A country model + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Country"))) +@interface KASCCountry : KASCBase +- (instancetype)initWithId:(KASCInt * _Nullable)id name:(NSString * _Nullable)name code:(NSString * _Nullable)code codeIso3:(NSString * _Nullable)codeIso3 phoneCode:(KASCInt * _Nullable)phoneCode __attribute__((swift_name("init(id:name:code:codeIso3:phoneCode:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCCountryCompanion *companion __attribute__((swift_name("companion"))); + +/** + * A country model + */ +- (KASCCountry *)doCopyId:(KASCInt * _Nullable)id name:(NSString * _Nullable)name code:(NSString * _Nullable)code codeIso3:(NSString * _Nullable)codeIso3 phoneCode:(KASCInt * _Nullable)phoneCode __attribute__((swift_name("doCopy(id:name:code:codeIso3:phoneCode:)"))); + +/** + * A country model + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A country model + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A country model + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The two character country code for this country. Follows ISO standards. */ +@property (readonly) NSString * _Nullable code __attribute__((swift_name("code"))); + +/** The three character country code for this country. Follows ISO standards. */ +@property (readonly) NSString * _Nullable codeIso3 __attribute__((swift_name("codeIso3"))); + +/** Unique country ID. */ +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); + +/** The name of this country */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** The international phoen code for this country. */ +@property (readonly) KASCInt * _Nullable phoneCode __attribute__((swift_name("phoneCode"))); +@end + + +/** + * A country model + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Country.Companion"))) +@interface KASCCountryCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A country model + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCCountryCompanion *shared __attribute__((swift_name("shared"))); + +/** + * A country model + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of offers available to all users. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicOffersApi"))) +@interface KASCPublicOffersApi : KASCApi + +/** + * Get a list of offers available to all users. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of offers available to all users. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCPublicOffersApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of offers available to all users. + */ +- (KASCCFlow *> *)getPublicOffers __attribute__((swift_name("getPublicOffers()"))); +@property (readonly) KASCCFlow *> *publicOffersState __attribute__((swift_name("publicOffersState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicOffersApi.Companion"))) +@interface KASCPublicOffersApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicOffersApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image__________________"))) +@interface KASCImage__________________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage__________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage__________________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image__________________.Companion"))) +@interface KASCImage__________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage__________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language________________________________"))) +@interface KASCLanguage________________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage________________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage________________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language________________________________.Companion"))) +@interface KASCLanguage________________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage________________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction________"))) +@interface KASCOfferAction________ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferAction________Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferAction________ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction________.Companion"))) +@interface KASCOfferAction________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferAction________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel________"))) +@interface KASCOfferModel________ : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCOfferModel________Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferModel________ *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this offer. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** Whether this offer must be claimed on a mobile app before being used in store. */ +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The offer description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this offer. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isCouponRedeemed __attribute__((swift_name("isCouponRedeemed"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this offer. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** The maximum purchase amount for this offer to be applied. */ +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); + +/** The minimum purchase amount for this offer to be applied */ +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); + +/** The multiplication factor of this offer. This only applies to Point Multiplier offers. */ +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this offer ever expires or not. If false, this offer is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this offer into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); + +/** The amount of points required for this offer to be applied. Only used for Convertible Coupons */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this offer */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this offer. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The offer title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This can be a free product, dollar based discount, percentage based discount, point multiplier, bonus points, and free shipping. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel________.Companion"))) +@interface KASCOfferModel________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferModel________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this offer. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation________"))) +@interface KASCOfferTranslation________ : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage________________________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferTranslation________Companion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this offer. + */ +- (KASCOfferTranslation________ *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage________________________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))); + +/** + * A language translation of this offer. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this offer. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this offer. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** where is this coupon available at. */ +@property (readonly) NSString * _Nullable couponAvailableAt __attribute__((swift_name("couponAvailableAt"))); + +/** The translated coupon description. */ +@property (readonly) NSString * _Nullable couponDescription __attribute__((swift_name("couponDescription"))); + +/** The language appropriate link of this coupon. */ +@property (readonly) NSString * _Nullable couponLink __attribute__((swift_name("couponLink"))); + +/** The translated coupon terms and conditions. */ +@property (readonly) NSString * _Nullable couponTermsConditions __attribute__((swift_name("couponTermsConditions"))); + +/** The translated coupon title. */ +@property (readonly) NSString * _Nullable couponTitle __attribute__((swift_name("couponTitle"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage________________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated offer description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this offer. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated offer terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated offer title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this offer. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation________.Companion"))) +@interface KASCOfferTranslation________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this offer. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferTranslation________Companion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this offer. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserOffersModel_"))) +@interface KASCUserOffersModel_ : KASCModel +- (instancetype)initWithData:(NSArray *)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserOffersModel_Companion *companion __attribute__((swift_name("companion"))); +- (KASCUserOffersModel_ *)doCopyData:(NSArray *)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of all offers available to this user */ +@property (readonly) NSArray *data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserOffersModel_.Companion"))) +@interface KASCUserOffersModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserOffersModel_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Acquires application strings. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("StringsApi"))) +@interface KASCStringsApi : KASCApi + +/** + * Acquires application strings. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Acquires application strings. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCStringsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Acquires application strings. + */ +- (KASCCFlow *> *)getStrings __attribute__((swift_name("getStrings()"))); +@property (readonly) KASCCFlow *> *stringsState __attribute__((swift_name("stringsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("StringsApi.Companion"))) +@interface KASCStringsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCStringsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ApplicationString"))) +@interface KASCApplicationString : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id key:(NSString * _Nullable)key string:(NSString * _Nullable)string createdAt:(NSString * _Nullable)createdAt __attribute__((swift_name("init(id:key:string:createdAt:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCApplicationStringCompanion *companion __attribute__((swift_name("companion"))); +- (KASCApplicationString *)doCopyId:(KASCLong * _Nullable)id key:(NSString * _Nullable)key string:(NSString * _Nullable)string createdAt:(NSString * _Nullable)createdAt __attribute__((swift_name("doCopy(id:key:string:createdAt:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSString * _Nullable key __attribute__((swift_name("key"))); +@property (readonly) NSString * _Nullable string __attribute__((swift_name("string"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ApplicationString.Companion"))) +@interface KASCApplicationStringCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCApplicationStringCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ApplicationStringsModel"))) +@interface KASCApplicationStringsModel : KASCModel +- (instancetype)initWithData:(NSArray *)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCApplicationStringsModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCApplicationStringsModel *)doCopyData:(NSArray *)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of application strings. */ +@property (readonly) NSArray *data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ApplicationStringsModel.Companion"))) +@interface KASCApplicationStringsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCApplicationStringsModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of gift cards available for purchase by specific business [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessGiftCardsApi"))) +@interface KASCUserBusinessGiftCardsApi : KASCApi + +/** + * Get a list of gift cards available for purchase by specific business [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of gift cards available for purchase by specific business [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCUserBusinessGiftCardsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of gift cards available for purchase by specific business + */ +- (KASCCFlow *> *)getUserBusinessGiftCardsBusinessId:(NSString *)businessId __attribute__((swift_name("getUserBusinessGiftCards(businessId:)"))); +@property (readonly) KASCCFlow *> *userBusinessGiftCardsState __attribute__((swift_name("userBusinessGiftCardsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessGiftCardsApi.Companion"))) +@interface KASCUserBusinessGiftCardsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessGiftCardsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory_________"))) +@interface KASCBusinessCategory_________ : KASCBase +- (instancetype)initWithName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("init(name:icon:code:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessCategory_________Companion *companion __attribute__((swift_name("companion"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (KASCBusinessCategory_________ *)doCopyName:(NSString * _Nullable)name icon:(NSString * _Nullable)icon code:(NSString * _Nullable)code __attribute__((swift_name("doCopy(name:icon:code:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Unique ategory code for this category */ +@property (readonly) NSString * _Nullable code __attribute__((swift_name("code"))); + +/** Url to this category's icon */ +@property (readonly) NSString * _Nullable icon __attribute__((swift_name("icon"))); + +/** Name of this category */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessCategory_________.Companion"))) +@interface KASCBusinessCategory_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessCategory_________Companion *shared __attribute__((swift_name("shared"))); + +/** + * Details about this business' category. This can be something like cafe, boutique, etc... + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Business profile data + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData_________"))) +@interface KASCBusinessData_________ : KASCBase +- (instancetype)initWithId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage___________________ * _Nullable)logo logoTransparentBackground:(KASCImage___________________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage___________________ * _Nullable)coverPhoto category:(KASCBusinessCategory_________ * _Nullable)category __attribute__((swift_name("init(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCBusinessData_________Companion *companion __attribute__((swift_name("companion"))); + +/** + * Business profile data + */ +- (KASCBusinessData_________ *)doCopyId:(NSString * _Nullable)id name:(NSString * _Nullable)name loyaltyType:(NSString * _Nullable)loyaltyType conglomerate:(NSString * _Nullable)conglomerate whiteLabel:(NSString * _Nullable)whiteLabel about:(NSString * _Nullable)about logo:(KASCImage___________________ * _Nullable)logo logoTransparentBackground:(KASCImage___________________ * _Nullable)logoTransparentBackground coverPhoto:(KASCImage___________________ * _Nullable)coverPhoto category:(KASCBusinessCategory_________ * _Nullable)category __attribute__((swift_name("doCopy(id:name:loyaltyType:conglomerate:whiteLabel:about:logo:logoTransparentBackground:coverPhoto:category:)"))); + +/** + * Business profile data + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Business profile data + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Business profile data + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** General about text for the business */ +@property (readonly) NSString * _Nullable about __attribute__((swift_name("about"))); +@property (readonly) KASCBusinessCategory_________ * _Nullable category __attribute__((swift_name("category"))); + +/** Whether this is a conglomerate business. Conglomerate businesses are umbrellas for multiple business' in Kangaroo */ +@property (readonly) NSString * _Nullable conglomerate __attribute__((swift_name("conglomerate"))); +@property (readonly) KASCImage___________________ * _Nullable coverPhoto __attribute__((swift_name("coverPhoto"))); + +/** Unique business ID. */ +@property (readonly) NSString * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCImage___________________ * _Nullable logo __attribute__((swift_name("logo"))); +@property (readonly) KASCImage___________________ * _Nullable logoTransparentBackground __attribute__((swift_name("logoTransparentBackground"))); + +/** The manner in which this business rewards its customers. This can be by purchase amount of by visit to the store */ +@property (readonly) NSString * _Nullable loyaltyType __attribute__((swift_name("loyaltyType"))); + +/** The name of this business */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); + +/** Whether this is a white label business. White label business' don't appear in the Kangaroo Mobile Customer app, as they usually have their own app. */ +@property (readonly) NSString * _Nullable whiteLabel __attribute__((swift_name("whiteLabel"))); +@end + + +/** + * Business profile data + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("BusinessData_________.Companion"))) +@interface KASCBusinessData_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Business profile data + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCBusinessData_________Companion *shared __attribute__((swift_name("shared"))); + +/** + * Business profile data + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardAction_"))) +@interface KASCGiftCardAction_ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCGiftCardAction_Companion *companion __attribute__((swift_name("companion"))); +- (KASCGiftCardAction_ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardAction_.Companion"))) +@interface KASCGiftCardAction_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardAction_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardModel_"))) +@interface KASCGiftCardModel_ : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCGiftCardModel_Companion *companion __attribute__((swift_name("companion"))); +- (KASCGiftCardModel_ *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this gift card. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The gift card description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this gift card */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this gift ard. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this gift card. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this gift card ever expires or not. If false, this gift card is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this gift card into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this gift card */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this gift card */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this gift card. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The gift card title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This is a gift card. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardModel_.Companion"))) +@interface KASCGiftCardModel_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardModel_Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this gift card. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardTranslation_"))) +@interface KASCGiftCardTranslation_ : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink language:(KASCLanguage_________________________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCGiftCardTranslation_Companion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this gift card. + */ +- (KASCGiftCardTranslation_ *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink language:(KASCLanguage_________________________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:language:)"))); + +/** + * A language translation of this gift card. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this gift card. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this gift card. + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage_________________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated gift card description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this gift card. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated gift card terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated gift card title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this gift card. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("GiftCardTranslation_.Companion"))) +@interface KASCGiftCardTranslation_Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this gift card. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCGiftCardTranslation_Companion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this gift card. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image___________________"))) +@interface KASCImage___________________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage___________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage___________________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image___________________.Companion"))) +@interface KASCImage___________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage___________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_________________________________"))) +@interface KASCLanguage_________________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage_________________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage_________________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language_________________________________.Companion"))) +@interface KASCLanguage_________________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage_________________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessGiftCardsIncluded"))) +@interface KASCUserBusinessGiftCardsIncluded : KASCBase +- (instancetype)initWithGiftcards:(NSArray * _Nullable)giftcards __attribute__((swift_name("init(giftcards:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCUserBusinessGiftCardsIncludedCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserBusinessGiftCardsIncluded *)doCopyGiftcards:(NSArray * _Nullable)giftcards __attribute__((swift_name("doCopy(giftcards:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable giftcards __attribute__((swift_name("giftcards"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessGiftCardsIncluded.Companion"))) +@interface KASCUserBusinessGiftCardsIncludedCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessGiftCardsIncludedCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessGiftCardsModel"))) +@interface KASCUserBusinessGiftCardsModel : KASCModel +- (instancetype)initWithData:(KASCBusinessData_________ *)data included:(KASCUserBusinessGiftCardsIncluded * _Nullable)included __attribute__((swift_name("init(data:included:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCUserBusinessGiftCardsModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCUserBusinessGiftCardsModel *)doCopyData:(KASCBusinessData_________ *)data included:(KASCUserBusinessGiftCardsIncluded * _Nullable)included __attribute__((swift_name("doCopy(data:included:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** Contains business data */ +@property (readonly) KASCBusinessData_________ *data __attribute__((swift_name("data"))); + +/** Contains all gift cards items */ +@property (readonly) KASCUserBusinessGiftCardsIncluded * _Nullable included __attribute__((swift_name("included"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("UserBusinessGiftCardsModel.Companion"))) +@interface KASCUserBusinessGiftCardsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCUserBusinessGiftCardsModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get this users transfer messages. Transfer messages are points or e-wallet transfers from other users. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessagesApi"))) +@interface KASCTransferMessagesApi : KASCApi + +/** + * Get this users transfer messages. Transfer messages are points or e-wallet transfers from other users. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get this users transfer messages. Transfer messages are points or e-wallet transfers from other users. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCTransferMessagesApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get this users transfer messages. Transfer messages are points or e-wallet transfers from other users. + */ +- (KASCCFlow *> *)getTransferMessagesBusinessId:(NSString *)businessId __attribute__((swift_name("getTransferMessages(businessId:)"))); +@property (readonly) KASCCFlow *> *transferMessagesState __attribute__((swift_name("transferMessagesState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessagesApi.Companion"))) +@interface KASCTransferMessagesApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferMessagesApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image____________________"))) +@interface KASCImage____________________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage____________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage____________________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image____________________.Companion"))) +@interface KASCImage____________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage____________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language__________________________________"))) +@interface KASCLanguage__________________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage__________________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage__________________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language__________________________________.Companion"))) +@interface KASCLanguage__________________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage__________________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction_________"))) +@interface KASCOfferAction_________ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferAction_________Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferAction_________ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferAction_________.Companion"))) +@interface KASCOfferAction_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferAction_________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel_________"))) +@interface KASCOfferModel_________ : KASCModel +- (instancetype)initWithId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCOfferModel_________Companion *companion __attribute__((swift_name("companion"))); +- (KASCOfferModel_________ *)doCopyId:(int32_t)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished couponConvertible:(KASCBoolean * _Nullable)couponConvertible realValue:(KASCDouble * _Nullable)realValue discountValue:(KASCDouble * _Nullable)discountValue multipFactor:(KASCDouble * _Nullable)multipFactor minPurchase:(KASCDouble * _Nullable)minPurchase maxPurchase:(KASCDouble * _Nullable)maxPurchase appsOnly:(KASCBoolean * _Nullable)appsOnly isCouponRedeemed:(KASCBoolean * _Nullable)isCouponRedeemed offerFrequencyId:(KASCInt * _Nullable)offerFrequencyId freqDetails:(NSArray * _Nullable)freqDetails peakFrom:(NSString * _Nullable)peakFrom peakTo:(NSString * _Nullable)peakTo type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link offerLanguages:(NSArray * _Nullable)offerLanguages actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:couponConvertible:realValue:discountValue:multipFactor:minPurchase:maxPurchase:appsOnly:isCouponRedeemed:offerFrequencyId:freqDetails:peakFrom:peakTo:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:offerLanguages:actions:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A list of possible actions to perform on this offer. */ +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** Whether this offer must be claimed on a mobile app before being used in store. */ +@property (readonly) KASCBoolean * _Nullable appsOnly __attribute__((swift_name("appsOnly"))); + +/** Whether this is a convertible coupon. Convertible coupons are automatically added to the customers account when the point threshold is met. The points are automatically deducted from the users' account. */ +@property (readonly) KASCBoolean * _Nullable couponConvertible __attribute__((swift_name("couponConvertible"))); + +/** The offer description. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); + +/** The discount value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable discountValue __attribute__((swift_name("discountValue"))); + +/** The expiration date of this offer. */ +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); +@property (readonly) NSArray * _Nullable freqDetails __attribute__((swift_name("freqDetails"))); + +/** A unique ID identifying this reward */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The images attached to this offer. There are 3 available sizes: thumbnail, medium, and large. */ +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isCouponRedeemed __attribute__((swift_name("isCouponRedeemed"))); + +/** Whether this offer is currently published or not. */ +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); + +/** The external link attached to this offer. */ +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); + +/** The maximum purchase amount for this offer to be applied. */ +@property (readonly) KASCDouble * _Nullable maxPurchase __attribute__((swift_name("maxPurchase"))); + +/** The minimum purchase amount for this offer to be applied */ +@property (readonly) KASCDouble * _Nullable minPurchase __attribute__((swift_name("minPurchase"))); + +/** The multiplication factor of this offer. This only applies to Point Multiplier offers. */ +@property (readonly) KASCDouble * _Nullable multipFactor __attribute__((swift_name("multipFactor"))); + +/** Whether this offer ever expires or not. If false, this offer is available indefinitely (provided any other requirements are met) */ +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCInt * _Nullable offerFrequencyId __attribute__((swift_name("offerFrequencyId"))); + +/** A list of translations of this offer into different languages. */ +@property (readonly) NSArray * _Nullable offerLanguages __attribute__((swift_name("offerLanguages"))); +@property (readonly) NSString * _Nullable peakFrom __attribute__((swift_name("peakFrom"))); +@property (readonly) NSString * _Nullable peakTo __attribute__((swift_name("peakTo"))); + +/** The amount of points required for this offer to be applied. Only used for Convertible Coupons */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The publication date of this offer. */ +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); + +/** The real value (in $) of this offer */ +@property (readonly) KASCDouble * _Nullable realValue __attribute__((swift_name("realValue"))); + +/** The unique slug for this offer */ +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); + +/** The terms and conditions attached to this offer. */ +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); + +/** The offer title. */ +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); + +/** The offer type. This can be a free product, dollar based discount, percentage based discount, point multiplier, bonus points, and free shipping. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferModel_________.Companion"))) +@interface KASCOfferModel_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferModel_________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * A language translation of this offer. + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation_________"))) +@interface KASCOfferTranslation_________ : KASCBase +- (instancetype)initWithId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage__________________________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCOfferTranslation_________Companion *companion __attribute__((swift_name("companion"))); + +/** + * A language translation of this offer. + */ +- (KASCOfferTranslation_________ *)doCopyId:(int32_t)id languageId:(KASCInt * _Nullable)languageId offerTitle:(NSString * _Nullable)offerTitle offerDescription:(NSString * _Nullable)offerDescription offerTermsConditions:(NSString * _Nullable)offerTermsConditions offerLink:(NSString * _Nullable)offerLink couponTitle:(NSString * _Nullable)couponTitle couponDescription:(NSString * _Nullable)couponDescription couponTermsConditions:(NSString * _Nullable)couponTermsConditions couponLink:(NSString * _Nullable)couponLink couponAvailableAt:(NSString * _Nullable)couponAvailableAt language:(KASCLanguage__________________________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:offerTitle:offerDescription:offerTermsConditions:offerLink:couponTitle:couponDescription:couponTermsConditions:couponLink:couponAvailableAt:language:)"))); + +/** + * A language translation of this offer. + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * A language translation of this offer. + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * A language translation of this offer. + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** where is this coupon available at. */ +@property (readonly) NSString * _Nullable couponAvailableAt __attribute__((swift_name("couponAvailableAt"))); + +/** The translated coupon description. */ +@property (readonly) NSString * _Nullable couponDescription __attribute__((swift_name("couponDescription"))); + +/** The language appropriate link of this coupon. */ +@property (readonly) NSString * _Nullable couponLink __attribute__((swift_name("couponLink"))); + +/** The translated coupon terms and conditions. */ +@property (readonly) NSString * _Nullable couponTermsConditions __attribute__((swift_name("couponTermsConditions"))); + +/** The translated coupon title. */ +@property (readonly) NSString * _Nullable couponTitle __attribute__((swift_name("couponTitle"))); +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The language for which this translation applies. */ +@property (readonly) KASCLanguage__________________________________ * _Nullable language __attribute__((swift_name("language"))); + +/** The ID of this specific translation */ +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); + +/** The translated offer description. */ +@property (readonly) NSString * _Nullable offerDescription __attribute__((swift_name("offerDescription"))); + +/** The language appropriate link of this offer. */ +@property (readonly) NSString * _Nullable offerLink __attribute__((swift_name("offerLink"))); + +/** The translated offer terms and conditions. */ +@property (readonly) NSString * _Nullable offerTermsConditions __attribute__((swift_name("offerTermsConditions"))); + +/** The translated offer title. */ +@property (readonly) NSString * _Nullable offerTitle __attribute__((swift_name("offerTitle"))); +@end + + +/** + * A language translation of this offer. + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("OfferTranslation_________.Companion"))) +@interface KASCOfferTranslation_________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * A language translation of this offer. + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCOfferTranslation_________Companion *shared __attribute__((swift_name("shared"))); + +/** + * A language translation of this offer. + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessage__"))) +@interface KASCTransferMessage__ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id typeId:(KASCLong * _Nullable)typeId type:(NSString * _Nullable)type description:(NSString * _Nullable)description points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount hidden:(KASCBoolean * _Nullable)hidden createdAt:(NSString * _Nullable)createdAt offer:(KASCOfferModel_________ * _Nullable)offer giftCardQueue:(KASCTransferMessageGiftCardQueue__ * _Nullable)giftCardQueue actions:(NSArray * _Nullable)actions __attribute__((swift_name("init(id:typeId:type:description:points:amount:hidden:createdAt:offer:giftCardQueue:actions:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransferMessage__Companion *companion __attribute__((swift_name("companion"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (KASCTransferMessage__ *)doCopyId:(KASCLong * _Nullable)id typeId:(KASCLong * _Nullable)typeId type:(NSString * _Nullable)type description:(NSString * _Nullable)description points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount hidden:(KASCBoolean * _Nullable)hidden createdAt:(NSString * _Nullable)createdAt offer:(KASCOfferModel_________ * _Nullable)offer giftCardQueue:(KASCTransferMessageGiftCardQueue__ * _Nullable)giftCardQueue actions:(NSArray * _Nullable)actions __attribute__((swift_name("doCopy(id:typeId:type:description:points:amount:hidden:createdAt:offer:giftCardQueue:actions:)"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable actions __attribute__((swift_name("actions"))); + +/** The amount in $ sent in this transfer. */ +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); + +/** The orignal send date of this transfer. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** The description of this transfer. */ +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCTransferMessageGiftCardQueue__ * _Nullable giftCardQueue __attribute__((swift_name("giftCardQueue"))); +@property (readonly) KASCBoolean * _Nullable hidden __attribute__((swift_name("hidden"))); + +/** The unique ID of this transfer. */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** The gift card in this transfer if applicable. Gift cards are an offer sub-type in Kangaroo. */ +@property (readonly) KASCOfferModel_________ * _Nullable offer __attribute__((swift_name("offer"))); + +/** The amount of points sent in this transfer. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** A string representation of this transfer type. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); + +/** The type ID of this transfer. */ +@property (readonly) KASCLong * _Nullable typeId __attribute__((swift_name("typeId"))); +@end + + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessage__.Companion"))) +@interface KASCTransferMessage__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferMessage__Companion *shared __attribute__((swift_name("shared"))); + +/** + * Transfer Message. These are sent to the user by other users. They can be points or e-wallet transfers or gift cards (which is deposited into the users' e-wallet) + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageActions__"))) +@interface KASCTransferMessageActions__ : KASCBase +- (instancetype)initWithType:(NSString * _Nullable)type __attribute__((swift_name("init(type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransferMessageActions__Companion *companion __attribute__((swift_name("companion"))); +- (KASCTransferMessageActions__ *)doCopyType:(NSString * _Nullable)type __attribute__((swift_name("doCopy(type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The action type. */ +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageActions__.Companion"))) +@interface KASCTransferMessageActions__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferMessageActions__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageGiftCardQueue__"))) +@interface KASCTransferMessageGiftCardQueue__ : KASCBase +- (instancetype)initWithId:(KASCLong * _Nullable)id enabled:(KASCBoolean * _Nullable)enabled senderName:(NSString * _Nullable)senderName recipientName:(NSString * _Nullable)recipientName emailPhone:(NSString * _Nullable)emailPhone points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount createdAt:(NSString * _Nullable)createdAt scheduledAt:(NSString * _Nullable)scheduledAt __attribute__((swift_name("init(id:enabled:senderName:recipientName:emailPhone:points:amount:createdAt:scheduledAt:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCTransferMessageGiftCardQueue__Companion *companion __attribute__((swift_name("companion"))); +- (KASCTransferMessageGiftCardQueue__ *)doCopyId:(KASCLong * _Nullable)id enabled:(KASCBoolean * _Nullable)enabled senderName:(NSString * _Nullable)senderName recipientName:(NSString * _Nullable)recipientName emailPhone:(NSString * _Nullable)emailPhone points:(KASCLong * _Nullable)points amount:(KASCDouble * _Nullable)amount createdAt:(NSString * _Nullable)createdAt scheduledAt:(NSString * _Nullable)scheduledAt __attribute__((swift_name("doCopy(id:enabled:senderName:recipientName:emailPhone:points:amount:createdAt:scheduledAt:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** The amount in $ sent in this transfer. */ +@property (readonly) KASCDouble * _Nullable amount __attribute__((swift_name("amount"))); + +/** The orignal creation date of this transfer. */ +@property (readonly) NSString * _Nullable createdAt __attribute__((swift_name("createdAt"))); + +/** The phone number or email address that this transfer was sent to. */ +@property (readonly) NSString * _Nullable emailPhone __attribute__((swift_name("emailPhone"))); + +/** Whether this item is enabled. Usually true. */ +@property (readonly) KASCBoolean * _Nullable enabled __attribute__((swift_name("enabled"))); + +/** The unique ID of this gift_card_queue */ +@property (readonly) KASCLong * _Nullable id __attribute__((swift_name("id"))); + +/** The amount of points sent in this transfer. */ +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); + +/** The name of the recipient of this transfer. */ +@property (readonly) NSString * _Nullable recipientName __attribute__((swift_name("recipientName"))); + +/** The original scheduled delivery date of this transfer. */ +@property (readonly) NSString * _Nullable scheduledAt __attribute__((swift_name("scheduledAt"))); + +/** The name of the sender of this transfer. */ +@property (readonly) NSString * _Nullable senderName __attribute__((swift_name("senderName"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessageGiftCardQueue__.Companion"))) +@interface KASCTransferMessageGiftCardQueue__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferMessageGiftCardQueue__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Contains a list of transfer messages sent to this user + * + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessagesModel"))) +@interface KASCTransferMessagesModel : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCTransferMessagesModelCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Contains a list of transfer messages sent to this user + */ +- (KASCTransferMessagesModel *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); + +/** + * Contains a list of transfer messages sent to this user + */ +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); + +/** + * Contains a list of transfer messages sent to this user + */ +- (NSUInteger)hash __attribute__((swift_name("hash()"))); + +/** + * Contains a list of transfer messages sent to this user + */ +- (NSString *)description __attribute__((swift_name("description()"))); + +/** List of transfer messages. */ +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + + +/** + * Contains a list of transfer messages sent to this user + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TransferMessagesModel.Companion"))) +@interface KASCTransferMessagesModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); + +/** + * Contains a list of transfer messages sent to this user + */ ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCTransferMessagesModelCompanion *shared __attribute__((swift_name("shared"))); + +/** + * Contains a list of transfer messages sent to this user + */ +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * Get a list of rewards available to all users. [Api] class + */ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicRewardsApi"))) +@interface KASCPublicRewardsApi : KASCApi + +/** + * Get a list of rewards available to all users. [Api] class + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); + +/** + * Get a list of rewards available to all users. [Api] class + */ ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCPublicRewardsApiCompanion *companion __attribute__((swift_name("companion"))); + +/** + * Get a list of rewards available to all users. + */ +- (KASCCFlow *> *)getPublicRewards __attribute__((swift_name("getPublicRewards()"))); +@property (readonly) KASCCFlow *> *publicRewardsState __attribute__((swift_name("publicRewardsState"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicRewardsApi.Companion"))) +@interface KASCPublicRewardsApiCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicRewardsApiCompanion *shared __attribute__((swift_name("shared"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_____________________"))) +@interface KASCImage_____________________ : KASCBase +- (instancetype)initWithLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("init(large:medium:thumbnail:default:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCImage_____________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCImage_____________________ *)doCopyLarge:(NSString * _Nullable)large medium:(NSString * _Nullable)medium thumbnail:(NSString * _Nullable)thumbnail default:(KASCBoolean * _Nullable)default_ __attribute__((swift_name("doCopy(large:medium:thumbnail:default:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly, getter=default) KASCBoolean * _Nullable default_ __attribute__((swift_name("default_"))); +@property (readonly) NSString * _Nullable large __attribute__((swift_name("large"))); +@property (readonly) NSString * _Nullable medium __attribute__((swift_name("medium"))); +@property (readonly) NSString * _Nullable thumbnail __attribute__((swift_name("thumbnail"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Image_____________________.Companion"))) +@interface KASCImage_____________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCImage_____________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language___________________________________"))) +@interface KASCLanguage___________________________________ : KASCBase +- (instancetype)initWithId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("init(id:abbreviation:name:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCLanguage___________________________________Companion *companion __attribute__((swift_name("companion"))); +- (KASCLanguage___________________________________ *)doCopyId:(int32_t)id abbreviation:(NSString * _Nullable)abbreviation name:(NSString * _Nullable)name __attribute__((swift_name("doCopy(id:abbreviation:name:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** A two letter abbreviation of this language. Follows ISO standards (en, fr, es) */ +@property (readonly) NSString * _Nullable abbreviation __attribute__((swift_name("abbreviation"))); + +/** The Kangaroo ID of this language. */ +@property (readonly) int32_t id __attribute__((swift_name("id"))); + +/** The full name of this language (English, French, Spanish) */ +@property (readonly) NSString * _Nullable name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Language___________________________________.Companion"))) +@interface KASCLanguage___________________________________Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCLanguage___________________________________Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicRewardsModel"))) +@interface KASCPublicRewardsModel : KASCModel +- (instancetype)initWithData:(NSArray * _Nullable)data __attribute__((swift_name("init(data:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCPublicRewardsModelCompanion *companion __attribute__((swift_name("companion"))); +- (KASCPublicRewardsModel *)doCopyData:(NSArray * _Nullable)data __attribute__((swift_name("doCopy(data:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSArray * _Nullable data __attribute__((swift_name("data"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PublicRewardsModel.Companion"))) +@interface KASCPublicRewardsModelCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCPublicRewardsModelCompanion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardModel__"))) +@interface KASCRewardModel__ : KASCModel +- (instancetype)initWithId:(KASCInt * _Nullable)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished amount:(KASCFloat * _Nullable)amount realValue:(KASCFloat * _Nullable)realValue discountValue:(KASCFloat * _Nullable)discountValue partnerReward:(KASCBoolean * _Nullable)partnerReward redeemForGiftCard:(KASCBoolean * _Nullable)redeemForGiftCard type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link rewardLanguages:(NSArray * _Nullable)rewardLanguages __attribute__((swift_name("init(id:points:publishAt:expiresAt:isPublished:amount:realValue:discountValue:partnerReward:redeemForGiftCard:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:rewardLanguages:)"))) __attribute__((objc_designated_initializer)); + +/** + * Base DAO object returned from Network results and Database queries. + * Should be Serializable. + */ +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCRewardModel__Companion *companion __attribute__((swift_name("companion"))); +- (KASCRewardModel__ *)doCopyId:(KASCInt * _Nullable)id points:(KASCLong * _Nullable)points publishAt:(NSString * _Nullable)publishAt expiresAt:(NSString * _Nullable)expiresAt isPublished:(KASCBoolean * _Nullable)isPublished amount:(KASCFloat * _Nullable)amount realValue:(KASCFloat * _Nullable)realValue discountValue:(KASCFloat * _Nullable)discountValue partnerReward:(KASCBoolean * _Nullable)partnerReward redeemForGiftCard:(KASCBoolean * _Nullable)redeemForGiftCard type:(NSString * _Nullable)type title:(NSString * _Nullable)title description:(NSString * _Nullable)description slug:(NSString * _Nullable)slug images:(NSArray * _Nullable)images neverExpiresFlag:(KASCBoolean * _Nullable)neverExpiresFlag termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link rewardLanguages:(NSArray * _Nullable)rewardLanguages __attribute__((swift_name("doCopy(id:points:publishAt:expiresAt:isPublished:amount:realValue:discountValue:partnerReward:redeemForGiftCard:type:title:description:slug:images:neverExpiresFlag:termsConditions:link:rewardLanguages:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCFloat * _Nullable amount __attribute__((swift_name("amount"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCFloat * _Nullable discountValue __attribute__((swift_name("discountValue"))); +@property (readonly) NSString * _Nullable expiresAt __attribute__((swift_name("expiresAt"))); + +/** A unique ID identifying this reward */ +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) NSArray * _Nullable images __attribute__((swift_name("images"))); +@property (readonly) KASCBoolean * _Nullable isPublished __attribute__((swift_name("isPublished"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) KASCBoolean * _Nullable neverExpiresFlag __attribute__((swift_name("neverExpiresFlag"))); +@property (readonly) KASCBoolean * _Nullable partnerReward __attribute__((swift_name("partnerReward"))); +@property (readonly) KASCLong * _Nullable points __attribute__((swift_name("points"))); +@property (readonly) NSString * _Nullable publishAt __attribute__((swift_name("publishAt"))); +@property (readonly) KASCFloat * _Nullable realValue __attribute__((swift_name("realValue"))); +@property (readonly) KASCBoolean * _Nullable redeemForGiftCard __attribute__((swift_name("redeemForGiftCard"))); +@property (readonly) NSArray * _Nullable rewardLanguages __attribute__((swift_name("rewardLanguages"))); +@property (readonly) NSString * _Nullable slug __attribute__((swift_name("slug"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@property (readonly) NSString * _Nullable type __attribute__((swift_name("type"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardModel__.Companion"))) +@interface KASCRewardModel__Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRewardModel__Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport + * kotlinx.serialization.Serializable +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardTranslation___"))) +@interface KASCRewardTranslation___ : KASCBase +- (instancetype)initWithId:(KASCInt * _Nullable)id languageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link language:(KASCLanguage___________________________________ * _Nullable)language __attribute__((swift_name("init(id:languageId:title:description:termsConditions:link:language:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCRewardTranslation___Companion *companion __attribute__((swift_name("companion"))); +- (KASCRewardTranslation___ *)doCopyId:(KASCInt * _Nullable)id languageId:(KASCInt * _Nullable)languageId title:(NSString * _Nullable)title description:(NSString * _Nullable)description termsConditions:(NSString * _Nullable)termsConditions link:(NSString * _Nullable)link language:(KASCLanguage___________________________________ * _Nullable)language __attribute__((swift_name("doCopy(id:languageId:title:description:termsConditions:link:language:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString * _Nullable description_ __attribute__((swift_name("description_"))); +@property (readonly) KASCInt * _Nullable id __attribute__((swift_name("id"))); +@property (readonly) KASCLanguage___________________________________ * _Nullable language __attribute__((swift_name("language"))); +@property (readonly) KASCInt * _Nullable languageId __attribute__((swift_name("languageId"))); +@property (readonly) NSString * _Nullable link __attribute__((swift_name("link"))); +@property (readonly) NSString * _Nullable termsConditions __attribute__((swift_name("termsConditions"))); +@property (readonly) NSString * _Nullable title __attribute__((swift_name("title"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("RewardTranslation___.Companion"))) +@interface KASCRewardTranslation___Companion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCRewardTranslation___Companion *shared __attribute__((swift_name("shared"))); +- (id)serializer __attribute__((swift_name("serializer()"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_authRefreshTokensParams"))) +@interface KASCKtor_client_authRefreshTokensParams : KASCBase +- (instancetype)initWithClient:(KASCKtor_client_coreHttpClient *)client response:(KASCKtor_client_coreHttpResponse *)response oldTokens:(KASCKtor_client_authBearerTokens * _Nullable)oldTokens __attribute__((swift_name("init(client:response:oldTokens:)"))) __attribute__((objc_designated_initializer)); +- (void)markAsRefreshTokenRequest:(KASCKtor_client_coreHttpRequestBuilder *)receiver __attribute__((swift_name("markAsRefreshTokenRequest(_:)"))); +@property (readonly) KASCKtor_client_coreHttpClient *client __attribute__((swift_name("client"))); +@property (readonly) KASCKtor_client_authBearerTokens * _Nullable oldTokens __attribute__((swift_name("oldTokens"))); +@property (readonly) KASCKtor_client_coreHttpResponse *response __attribute__((swift_name("response"))); +@end + +@interface KASCKtor_client_authRefreshTokensParams (Extensions) + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)refreshTokensClient:(KASCKtor_client_coreHttpClient *)client completionHandler:(void (^)(KASCKtor_client_authBearerTokens * _Nullable_result, NSError * _Nullable))completionHandler __attribute__((swift_name("refreshTokens(client:completionHandler:)"))); +@end + +@interface KASCUserReAuthenticationModel (Extensions) +- (KASCAuthenticationModel *)toAuthenticationModelScope:(NSString * _Nullable)scope __attribute__((swift_name("toAuthenticationModel(scope:)"))); +@end + +@interface KASCResult (Extensions) + +/** + * @note annotations + * kotlin.js.ExperimentalJsExport +*/ +- (KASCSerializedResult *)toJsonResult __attribute__((swift_name("toJsonResult()"))); +@end + +@interface KASCIOResult (Extensions) + +/** + * Maps IOResult to Result, along with possible errors. Errors should be mapped + * to relevant equivalents in the Domain layer. + */ +- (KASCResult *)toModel __attribute__((swift_name("toModel()"))); +@end + +@interface KASCCFlow (Extensions) + +/** + * Serializes [GetConglomerateNotificationPreferencesState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeGetConglomerateNotificationPreferencesState __attribute__((swift_name("serializeGetConglomerateNotificationPreferencesState()"))); + +/** + * Serializes [TiersState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeTiersState __attribute__((swift_name("serializeTiersState()"))); + +/** + * Serializes [UserBusinessProfileState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserBusinessProfileState __attribute__((swift_name("serializeUserBusinessProfileState()"))); + +/** + * Serializes [OfferFacebookShareState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeOfferFacebookShareState __attribute__((swift_name("serializeOfferFacebookShareState()"))); + +/** + * Serializes [UserProfileState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserProfileState __attribute__((swift_name("serializeUserProfileState()"))); + +/** + * Serializes [UserCheckInState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserCheckInState __attribute__((swift_name("serializeUserCheckInState()"))); + +/** + * Serializes [AlaCarteProductsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeAlaCarteProductsState __attribute__((swift_name("serializeAlaCarteProductsState()"))); + +/** + * Serializes [UserBusinessRewardsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserBusinessRewardsState __attribute__((swift_name("serializeUserBusinessRewardsState()"))); + +/** + * Serializes [UserBusinessAlaCarteProductsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserBusinessAlaCarteProductsState __attribute__((swift_name("serializeUserBusinessAlaCarteProductsState()"))); + +/** + * Serializes [UserProfileUpdateState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserProfileUpdateState __attribute__((swift_name("serializeUserProfileUpdateState()"))); + +/** + * Serializes [GiftCardDepositState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeGiftCardDepositState __attribute__((swift_name("serializeGiftCardDepositState()"))); + +/** + * Serializes [PublicAlaCarteProductsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializePublicAlaCarteProductsState __attribute__((swift_name("serializePublicAlaCarteProductsState()"))); + +/** + * Serializes [PayPalPaymentState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializePayPalPaymentState __attribute__((swift_name("serializePayPalPaymentState()"))); + +/** + * Serializes [SocialMediaActionPerformState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeSocialMediaActionPerformState __attribute__((swift_name("serializeSocialMediaActionPerformState()"))); + +/** + * Serializes [RedeemRewardsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeRedeemRewardsState __attribute__((swift_name("serializeRedeemRewardsState()"))); + +/** + * Serializes [PublicProductsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializePublicProductsState __attribute__((swift_name("serializePublicProductsState()"))); + +/** + * Serializes [UserRewardsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserRewardsState __attribute__((swift_name("serializeUserRewardsState()"))); + +/** + * Serializes [BannersState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeBannersState __attribute__((swift_name("serializeBannersState()"))); + +/** + * Serializes [BalanceTransferState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeBalanceTransferState __attribute__((swift_name("serializeBalanceTransferState()"))); + +/** + * Serializes [GiftCardsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeGiftCardsState __attribute__((swift_name("serializeGiftCardsState()"))); + +/** + * Serializes [BusinessesState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeBusinessesState __attribute__((swift_name("serializeBusinessesState()"))); + +/** + * Serializes [UserCouponsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserCouponsState __attribute__((swift_name("serializeUserCouponsState()"))); + +/** + * Serializes [UserBusinessSocialMediaLinksState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserBusinessSocialMediaLinksState __attribute__((swift_name("serializeUserBusinessSocialMediaLinksState()"))); + +/** + * Serializes [RedeemCouponsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeRedeemCouponsState __attribute__((swift_name("serializeRedeemCouponsState()"))); + +/** + * Serializes [UserDeleteState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserDeleteState __attribute__((swift_name("serializeUserDeleteState()"))); + +/** + * Serializes [GetNotificationPreferencesState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeGetNotificationPreferencesState __attribute__((swift_name("serializeGetNotificationPreferencesState()"))); + +/** + * Serializes [UserUnsubscribeState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserUnsubscribeState __attribute__((swift_name("serializeUserUnsubscribeState()"))); + +/** + * Serializes [UserDetailsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserDetailsState __attribute__((swift_name("serializeUserDetailsState()"))); + +/** + * Serializes [BranchesState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeBranchesState __attribute__((swift_name("serializeBranchesState()"))); + +/** + * Serializes [UserScanReceiptState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserScanReceiptState __attribute__((swift_name("serializeUserScanReceiptState()"))); + +/** + * Serializes [GetSpinToWinPrizesState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeGetSpinToWinPrizesState __attribute__((swift_name("serializeGetSpinToWinPrizesState()"))); + +/** + * Serializes [GiftCardPurchaseState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeGiftCardPurchaseState __attribute__((swift_name("serializeGiftCardPurchaseState()"))); + +/** + * Serializes [UserBusinessBannersState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserBusinessBannersState __attribute__((swift_name("serializeUserBusinessBannersState()"))); + +/** + * Serializes [UserOffersState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserOffersState __attribute__((swift_name("serializeUserOffersState()"))); + +/** + * Serializes [UpdateDefaultBusinessIdState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUpdateDefaultBusinessIdState __attribute__((swift_name("serializeUpdateDefaultBusinessIdState()"))); + +/** + * Serializes [UserPinResetRequestState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserPinResetRequestState __attribute__((swift_name("serializeUserPinResetRequestState()"))); + +/** + * Serializes [ClaimOfferState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeClaimOfferState __attribute__((swift_name("serializeClaimOfferState()"))); + +/** + * Serializes [UserTransactionHistoryState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserTransactionHistoryState __attribute__((swift_name("serializeUserTransactionHistoryState()"))); + +/** + * Serializes [SocialMediaLinksState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeSocialMediaLinksState __attribute__((swift_name("serializeSocialMediaLinksState()"))); + +/** + * Serializes [UserProductsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserProductsState __attribute__((swift_name("serializeUserProductsState()"))); + +/** + * Serializes [UserRegistrationState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserRegistrationState __attribute__((swift_name("serializeUserRegistrationState()"))); + +/** + * Serializes [BusinessState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeBusinessState __attribute__((swift_name("serializeBusinessState()"))); + +/** + * Serializes [PublicBusinessSettingsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializePublicBusinessSettingsState __attribute__((swift_name("serializePublicBusinessSettingsState()"))); + +/** + * Serializes [GetDefaultBusinessIdState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeGetDefaultBusinessIdState __attribute__((swift_name("serializeGetDefaultBusinessIdState()"))); + +/** + * Serializes [UserBusinessFrequentBuyerProgramsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserBusinessFrequentBuyerProgramsState __attribute__((swift_name("serializeUserBusinessFrequentBuyerProgramsState()"))); + +/** + * Serializes [PublicBranchesState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializePublicBranchesState __attribute__((swift_name("serializePublicBranchesState()"))); + +/** + * Serializes [UserPinUpdateState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserPinUpdateState __attribute__((swift_name("serializeUserPinUpdateState()"))); + +/** + * Serializes [PushTokenRegistrationState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializePushTokenRegistrationState __attribute__((swift_name("serializePushTokenRegistrationState()"))); + +/** + * Serializes [UserBusinessOffersState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserBusinessOffersState __attribute__((swift_name("serializeUserBusinessOffersState()"))); + +/** + * Serializes [PublicBannersState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializePublicBannersState __attribute__((swift_name("serializePublicBannersState()"))); + +/** + * Serializes [UpdateNotificationPreferencesState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUpdateNotificationPreferencesState __attribute__((swift_name("serializeUpdateNotificationPreferencesState()"))); + +/** + * Serializes [UserBusinessProductsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserBusinessProductsState __attribute__((swift_name("serializeUserBusinessProductsState()"))); + +/** + * Serializes [UserUsedCouponsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserUsedCouponsState __attribute__((swift_name("serializeUserUsedCouponsState()"))); + +/** + * Serializes [UserAuthenticationState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserAuthenticationState __attribute__((swift_name("serializeUserAuthenticationState()"))); + +/** + * Serializes [FrequentBuyerProgramsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeFrequentBuyerProgramsState __attribute__((swift_name("serializeFrequentBuyerProgramsState()"))); + +/** + * Serializes [TransferRecallState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeTransferRecallState __attribute__((swift_name("serializeTransferRecallState()"))); + +/** + * Serializes [CampaignMessagesState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeCampaignMessagesState __attribute__((swift_name("serializeCampaignMessagesState()"))); + +/** + * Serializes [UserPinResetState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserPinResetState __attribute__((swift_name("serializeUserPinResetState()"))); + +/** + * Serializes [UserAccountVerificationState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserAccountVerificationState __attribute__((swift_name("serializeUserAccountVerificationState()"))); + +/** + * Serializes [CountriesState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeCountriesState __attribute__((swift_name("serializeCountriesState()"))); + +/** + * Serializes [PublicOffersState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializePublicOffersState __attribute__((swift_name("serializePublicOffersState()"))); + +/** + * Serializes [StringsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeStringsState __attribute__((swift_name("serializeStringsState()"))); + +/** + * Serializes [UserBusinessGiftCardsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeUserBusinessGiftCardsState __attribute__((swift_name("serializeUserBusinessGiftCardsState()"))); + +/** + * Serializes [TransferMessagesState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializeTransferMessagesState __attribute__((swift_name("serializeTransferMessagesState()"))); + +/** + * Serializes [PublicRewardsState]'s data and returns a new + * [CFlow] containing data serialized as a JSON [String]. + */ +- (KASCCFlow *> *)serializePublicRewardsState __attribute__((swift_name("serializePublicRewardsState()"))); +@end + +@interface KASCUserAuthenticationModel (Extensions) +- (KASCAuthenticationModel *)toAuthenticationModel __attribute__((swift_name("toAuthenticationModel()"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("EndpointKt"))) +@interface KASCEndpointKt : KASCBase ++ (id)replaceInPath:(id)receiver extraPaths:(KASCKotlinArray *)extraPaths __attribute__((swift_name("replaceInPath(_:extraPaths:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("LanguageKt"))) +@interface KASCLanguageKt : KASCBase +@property (class, readonly) NSString *LangHttpHeader __attribute__((swift_name("LangHttpHeader"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("DoNothingKt"))) +@interface KASCDoNothingKt : KASCBase + +/** + * Empty action. Often used in When() statements + */ +@property (class, readonly) KASCKotlinUnit *doNothing __attribute__((swift_name("doNothing"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("ConfigurationKt"))) +@interface KASCConfigurationKt : KASCBase +@property (class, readonly) BOOL isDebug __attribute__((swift_name("isDebug"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("FlowUtilsKt"))) +@interface KASCFlowUtilsKt : KASCBase + +/** + * Wraps Flow with [CFlow] wrapper + */ ++ (KASCCFlow *)asCFlow:(id)receiver __attribute__((swift_name("asCFlow(_:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("TranslationUtilsKt"))) +@interface KASCTranslationUtilsKt : KASCBase ++ (KASCTranslation * _Nullable)findTranslation:(NSArray *)receiver language:(KASCLanguage_ *)language __attribute__((swift_name("findTranslation(_:language:)"))); ++ (KASCTranslation * _Nullable)findTranslation:(NSArray *)receiver langCode:(NSString *)langCode __attribute__((swift_name("findTranslation(_:langCode:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("PreferredLanguageKt"))) +@interface KASCPreferredLanguageKt : KASCBase +@property (class, readonly) NSString *PREFERRED_LANGUAGE __attribute__((swift_name("PREFERRED_LANGUAGE"))); +@end + +__attribute__((swift_name("Kotlinx_serialization_coreSerializationStrategy"))) +@protocol KASCKotlinx_serialization_coreSerializationStrategy +@required +- (void)serializeEncoder:(id)encoder value:(id _Nullable)value __attribute__((swift_name("serialize(encoder:value:)"))); +@property (readonly) id descriptor __attribute__((swift_name("descriptor"))); +@end + +__attribute__((swift_name("Kotlinx_serialization_coreDeserializationStrategy"))) +@protocol KASCKotlinx_serialization_coreDeserializationStrategy +@required +- (id _Nullable)deserializeDecoder:(id)decoder __attribute__((swift_name("deserialize(decoder:)"))); +@property (readonly) id descriptor __attribute__((swift_name("descriptor"))); +@end + +__attribute__((swift_name("Kotlinx_serialization_coreKSerializer"))) +@protocol KASCKotlinx_serialization_coreKSerializer +@required +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("KotlinEnumCompanion"))) +@interface KASCKotlinEnumCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKotlinEnumCompanion *shared __attribute__((swift_name("shared"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("KotlinArray"))) +@interface KASCKotlinArray : KASCBase ++ (instancetype)arrayWithSize:(int32_t)size init:(T _Nullable (^)(KASCInt *))init __attribute__((swift_name("init(size:init:)"))); ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); +- (T _Nullable)getIndex:(int32_t)index __attribute__((swift_name("get(index:)"))); +- (id)iterator __attribute__((swift_name("iterator()"))); +- (void)setIndex:(int32_t)index value:(T _Nullable)value __attribute__((swift_name("set(index:value:)"))); +@property (readonly) int32_t size __attribute__((swift_name("size"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Stately_concurrencyAtomicReference"))) +@interface KASCStately_concurrencyAtomicReference : KASCBase +- (instancetype)initWithInitialValue:(V _Nullable)initialValue __attribute__((swift_name("init(initialValue:)"))) __attribute__((objc_designated_initializer)); +- (BOOL)compareAndSetExpected:(V _Nullable)expected new:(V _Nullable)new_ __attribute__((swift_name("compareAndSet(expected:new:)"))); +- (V _Nullable)get __attribute__((swift_name("get()"))); +- (void)setValue_:(V _Nullable)value_ __attribute__((swift_name("set(value_:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Stately_concurrencyAtomicBoolean"))) +@interface KASCStately_concurrencyAtomicBoolean : KASCBase +- (instancetype)initWithValue_:(BOOL)value_ __attribute__((swift_name("init(value_:)"))) __attribute__((objc_designated_initializer)); +- (BOOL)compareAndSetExpected:(BOOL)expected new:(BOOL)new_ __attribute__((swift_name("compareAndSet(expected:new:)"))); +@property BOOL value __attribute__((swift_name("value"))); +@end + +__attribute__((swift_name("KotlinRuntimeException"))) +@interface KASCKotlinRuntimeException : KASCKotlinException +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (instancetype)initWithMessage:(NSString * _Nullable)message __attribute__((swift_name("init(message:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithMessage:(NSString * _Nullable)message cause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(message:cause:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithCause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(cause:)"))) __attribute__((objc_designated_initializer)); +@end + +__attribute__((swift_name("KotlinIllegalStateException"))) +@interface KASCKotlinIllegalStateException : KASCKotlinRuntimeException +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (instancetype)initWithMessage:(NSString * _Nullable)message __attribute__((swift_name("init(message:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithMessage:(NSString * _Nullable)message cause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(message:cause:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithCause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(cause:)"))) __attribute__((objc_designated_initializer)); +@end + + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.4") +*/ +__attribute__((swift_name("KotlinCancellationException"))) +@interface KASCKotlinCancellationException : KASCKotlinIllegalStateException +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (instancetype)initWithMessage:(NSString * _Nullable)message __attribute__((swift_name("init(message:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithMessage:(NSString * _Nullable)message cause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(message:cause:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithCause:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("init(cause:)"))) __attribute__((objc_designated_initializer)); +@end + +__attribute__((swift_name("KotlinFunction"))) +@protocol KASCKotlinFunction +@required +@end + +__attribute__((swift_name("KotlinSuspendFunction0"))) +@protocol KASCKotlinSuspendFunction0 +@required + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)invokeWithCompletionHandler:(void (^)(id _Nullable_result, NSError * _Nullable))completionHandler __attribute__((swift_name("invoke(completionHandler:)"))); +@end + +__attribute__((swift_name("Ktor_httpHttpMessageBuilder"))) +@protocol KASCKtor_httpHttpMessageBuilder +@required +@property (readonly) KASCKtor_httpHeadersBuilder *headers __attribute__((swift_name("headers"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpRequestBuilder"))) +@interface KASCKtor_client_coreHttpRequestBuilder : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property (class, readonly, getter=companion) KASCKtor_client_coreHttpRequestBuilderCompanion *companion __attribute__((swift_name("companion"))); +- (KASCKtor_client_coreHttpRequestData *)build __attribute__((swift_name("build()"))); +- (id _Nullable)getCapabilityOrNullKey:(id)key __attribute__((swift_name("getCapabilityOrNull(key:)"))); +- (void)setAttributesBlock:(void (^)(id))block __attribute__((swift_name("setAttributes(block:)"))); +- (void)setCapabilityKey:(id)key capability:(id)capability __attribute__((swift_name("setCapability(key:capability:)"))); +- (KASCKtor_client_coreHttpRequestBuilder *)takeFromBuilder:(KASCKtor_client_coreHttpRequestBuilder *)builder __attribute__((swift_name("takeFrom(builder:)"))); +- (KASCKtor_client_coreHttpRequestBuilder *)takeFromWithExecutionContextBuilder:(KASCKtor_client_coreHttpRequestBuilder *)builder __attribute__((swift_name("takeFromWithExecutionContext(builder:)"))); +- (void)urlBlock:(void (^)(KASCKtor_httpURLBuilder *, KASCKtor_httpURLBuilder *))block __attribute__((swift_name("url(block:)"))); +@property (readonly) id attributes __attribute__((swift_name("attributes"))); +@property id body __attribute__((swift_name("body"))); +@property KASCKtor_utilsTypeInfo * _Nullable bodyType __attribute__((swift_name("bodyType"))); +@property (readonly) id executionContext __attribute__((swift_name("executionContext"))); +@property (readonly) KASCKtor_httpHeadersBuilder *headers __attribute__((swift_name("headers"))); +@property KASCKtor_httpHttpMethod *method __attribute__((swift_name("method"))); +@property (readonly) KASCKtor_httpURLBuilder *url __attribute__((swift_name("url"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreCoroutineScope"))) +@protocol KASCKotlinx_coroutines_coreCoroutineScope +@required +@property (readonly) id coroutineContext __attribute__((swift_name("coroutineContext"))); +@end + +__attribute__((swift_name("Ktor_ioCloseable"))) +@protocol KASCKtor_ioCloseable +@required +- (void)close __attribute__((swift_name("close()"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpClient"))) +@interface KASCKtor_client_coreHttpClient : KASCBase +- (instancetype)initWithEngine:(id)engine userConfig:(KASCKtor_client_coreHttpClientConfig *)userConfig __attribute__((swift_name("init(engine:userConfig:)"))) __attribute__((objc_designated_initializer)); +- (void)close __attribute__((swift_name("close()"))); +- (KASCKtor_client_coreHttpClient *)configBlock:(void (^)(KASCKtor_client_coreHttpClientConfig *))block __attribute__((swift_name("config(block:)"))); +- (BOOL)isSupportedCapability:(id)capability __attribute__((swift_name("isSupported(capability:)"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) id attributes __attribute__((swift_name("attributes"))); +@property (readonly) id coroutineContext __attribute__((swift_name("coroutineContext"))); +@property (readonly) id engine __attribute__((swift_name("engine"))); +@property (readonly) KASCKtor_client_coreHttpClientEngineConfig *engineConfig __attribute__((swift_name("engineConfig"))); +@property (readonly) KASCKtor_eventsEvents *monitor __attribute__((swift_name("monitor"))); +@property (readonly) KASCKtor_client_coreHttpReceivePipeline *receivePipeline __attribute__((swift_name("receivePipeline"))); +@property (readonly) KASCKtor_client_coreHttpRequestPipeline *requestPipeline __attribute__((swift_name("requestPipeline"))); +@property (readonly) KASCKtor_client_coreHttpResponsePipeline *responsePipeline __attribute__((swift_name("responsePipeline"))); +@property (readonly) KASCKtor_client_coreHttpSendPipeline *sendPipeline __attribute__((swift_name("sendPipeline"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreFlowCollector"))) +@protocol KASCKotlinx_coroutines_coreFlowCollector +@required + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)emitValue:(id _Nullable)value completionHandler:(void (^)(NSError * _Nullable))completionHandler __attribute__((swift_name("emit(value:completionHandler:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("KotlinNothing"))) +@interface KASCKotlinNothing : KASCBase +@end + +__attribute__((swift_name("Ktor_httpHttpMessage"))) +@protocol KASCKtor_httpHttpMessage +@required +@property (readonly) id headers __attribute__((swift_name("headers"))); +@end + +__attribute__((swift_name("Ktor_client_coreHttpResponse"))) +@interface KASCKtor_client_coreHttpResponse : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCKtor_client_coreHttpClientCall *call __attribute__((swift_name("call"))); +@property (readonly) id content __attribute__((swift_name("content"))); +@property (readonly) KASCKtor_utilsGMTDate *requestTime __attribute__((swift_name("requestTime"))); +@property (readonly) KASCKtor_utilsGMTDate *responseTime __attribute__((swift_name("responseTime"))); +@property (readonly) KASCKtor_httpHttpStatusCode *status __attribute__((swift_name("status"))); +@property (readonly) KASCKtor_httpHttpProtocolVersion *version __attribute__((swift_name("version"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_authBearerTokens"))) +@interface KASCKtor_client_authBearerTokens : KASCBase +- (instancetype)initWithAccessToken:(NSString *)accessToken refreshToken:(NSString *)refreshToken __attribute__((swift_name("init(accessToken:refreshToken:)"))) __attribute__((objc_designated_initializer)); +@property (readonly) NSString *accessToken __attribute__((swift_name("accessToken"))); +@property (readonly) NSString *refreshToken __attribute__((swift_name("refreshToken"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("KotlinUnit"))) +@interface KASCKotlinUnit : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)unit __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKotlinUnit *shared __attribute__((swift_name("shared"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@end + +__attribute__((swift_name("Kotlinx_serialization_coreEncoder"))) +@protocol KASCKotlinx_serialization_coreEncoder +@required +- (id)beginCollectionDescriptor:(id)descriptor collectionSize:(int32_t)collectionSize __attribute__((swift_name("beginCollection(descriptor:collectionSize:)"))); +- (id)beginStructureDescriptor:(id)descriptor __attribute__((swift_name("beginStructure(descriptor:)"))); +- (void)encodeBooleanValue:(BOOL)value __attribute__((swift_name("encodeBoolean(value:)"))); +- (void)encodeByteValue:(int8_t)value __attribute__((swift_name("encodeByte(value:)"))); +- (void)encodeCharValue:(unichar)value __attribute__((swift_name("encodeChar(value:)"))); +- (void)encodeDoubleValue:(double)value __attribute__((swift_name("encodeDouble(value:)"))); +- (void)encodeEnumEnumDescriptor:(id)enumDescriptor index:(int32_t)index __attribute__((swift_name("encodeEnum(enumDescriptor:index:)"))); +- (void)encodeFloatValue:(float)value __attribute__((swift_name("encodeFloat(value:)"))); +- (id)encodeInlineDescriptor:(id)descriptor __attribute__((swift_name("encodeInline(descriptor:)"))); +- (void)encodeIntValue:(int32_t)value __attribute__((swift_name("encodeInt(value:)"))); +- (void)encodeLongValue:(int64_t)value __attribute__((swift_name("encodeLong(value:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (void)encodeNotNullMark __attribute__((swift_name("encodeNotNullMark()"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (void)encodeNull __attribute__((swift_name("encodeNull()"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (void)encodeNullableSerializableValueSerializer:(id)serializer value:(id _Nullable)value __attribute__((swift_name("encodeNullableSerializableValue(serializer:value:)"))); +- (void)encodeSerializableValueSerializer:(id)serializer value:(id _Nullable)value __attribute__((swift_name("encodeSerializableValue(serializer:value:)"))); +- (void)encodeShortValue:(int16_t)value __attribute__((swift_name("encodeShort(value:)"))); +- (void)encodeStringValue:(NSString *)value __attribute__((swift_name("encodeString(value:)"))); +@property (readonly) KASCKotlinx_serialization_coreSerializersModule *serializersModule __attribute__((swift_name("serializersModule"))); +@end + +__attribute__((swift_name("Kotlinx_serialization_coreSerialDescriptor"))) +@protocol KASCKotlinx_serialization_coreSerialDescriptor +@required + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (NSArray> *)getElementAnnotationsIndex:(int32_t)index __attribute__((swift_name("getElementAnnotations(index:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (id)getElementDescriptorIndex:(int32_t)index __attribute__((swift_name("getElementDescriptor(index:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (int32_t)getElementIndexName:(NSString *)name __attribute__((swift_name("getElementIndex(name:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (NSString *)getElementNameIndex:(int32_t)index __attribute__((swift_name("getElementName(index:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (BOOL)isElementOptionalIndex:(int32_t)index __attribute__((swift_name("isElementOptional(index:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +@property (readonly) NSArray> *annotations __attribute__((swift_name("annotations"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +@property (readonly) int32_t elementsCount __attribute__((swift_name("elementsCount"))); +@property (readonly) BOOL isInline __attribute__((swift_name("isInline"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +@property (readonly) BOOL isNullable __attribute__((swift_name("isNullable"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +@property (readonly) KASCKotlinx_serialization_coreSerialKind *kind __attribute__((swift_name("kind"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +@property (readonly) NSString *serialName __attribute__((swift_name("serialName"))); +@end + +__attribute__((swift_name("Kotlinx_serialization_coreDecoder"))) +@protocol KASCKotlinx_serialization_coreDecoder +@required +- (id)beginStructureDescriptor:(id)descriptor __attribute__((swift_name("beginStructure(descriptor:)"))); +- (BOOL)decodeBoolean __attribute__((swift_name("decodeBoolean()"))); +- (int8_t)decodeByte __attribute__((swift_name("decodeByte()"))); +- (unichar)decodeChar __attribute__((swift_name("decodeChar()"))); +- (double)decodeDouble __attribute__((swift_name("decodeDouble()"))); +- (int32_t)decodeEnumEnumDescriptor:(id)enumDescriptor __attribute__((swift_name("decodeEnum(enumDescriptor:)"))); +- (float)decodeFloat __attribute__((swift_name("decodeFloat()"))); +- (id)decodeInlineDescriptor:(id)descriptor __attribute__((swift_name("decodeInline(descriptor:)"))); +- (int32_t)decodeInt __attribute__((swift_name("decodeInt()"))); +- (int64_t)decodeLong __attribute__((swift_name("decodeLong()"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (BOOL)decodeNotNullMark __attribute__((swift_name("decodeNotNullMark()"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (KASCKotlinNothing * _Nullable)decodeNull __attribute__((swift_name("decodeNull()"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (id _Nullable)decodeNullableSerializableValueDeserializer:(id)deserializer __attribute__((swift_name("decodeNullableSerializableValue(deserializer:)"))); +- (id _Nullable)decodeSerializableValueDeserializer:(id)deserializer __attribute__((swift_name("decodeSerializableValue(deserializer:)"))); +- (int16_t)decodeShort __attribute__((swift_name("decodeShort()"))); +- (NSString *)decodeString __attribute__((swift_name("decodeString()"))); +@property (readonly) KASCKotlinx_serialization_coreSerializersModule *serializersModule __attribute__((swift_name("serializersModule"))); +@end + +__attribute__((swift_name("KotlinIterator"))) +@protocol KASCKotlinIterator +@required +- (BOOL)hasNext __attribute__((swift_name("hasNext()"))); +- (id _Nullable)next __attribute__((swift_name("next()"))); +@end + +__attribute__((swift_name("Ktor_utilsStringValuesBuilder"))) +@protocol KASCKtor_utilsStringValuesBuilder +@required +- (void)appendName:(NSString *)name value:(NSString *)value __attribute__((swift_name("append(name:value:)"))); +- (void)appendAllStringValues:(id)stringValues __attribute__((swift_name("appendAll(stringValues:)"))); +- (void)appendAllName:(NSString *)name values:(id)values __attribute__((swift_name("appendAll(name:values:)"))); +- (void)appendMissingStringValues:(id)stringValues __attribute__((swift_name("appendMissing(stringValues:)"))); +- (void)appendMissingName:(NSString *)name values:(id)values __attribute__((swift_name("appendMissing(name:values:)"))); +- (id)build __attribute__((swift_name("build()"))); +- (void)clear __attribute__((swift_name("clear()"))); +- (BOOL)containsName:(NSString *)name __attribute__((swift_name("contains(name:)"))); +- (BOOL)containsName:(NSString *)name value:(NSString *)value __attribute__((swift_name("contains(name:value:)"))); +- (NSSet> *)entries __attribute__((swift_name("entries()"))); +- (NSString * _Nullable)getName:(NSString *)name __attribute__((swift_name("get(name:)"))); +- (NSArray * _Nullable)getAllName:(NSString *)name __attribute__((swift_name("getAll(name:)"))); +- (BOOL)isEmpty __attribute__((swift_name("isEmpty()"))); +- (NSSet *)names __attribute__((swift_name("names()"))); +- (void)removeName:(NSString *)name __attribute__((swift_name("remove(name:)"))); +- (BOOL)removeName:(NSString *)name value:(NSString *)value __attribute__((swift_name("remove(name:value:)"))); +- (void)removeKeysWithNoEntries __attribute__((swift_name("removeKeysWithNoEntries()"))); +- (void)setName:(NSString *)name value:(NSString *)value __attribute__((swift_name("set(name:value:)"))); +@property (readonly) BOOL caseInsensitiveName __attribute__((swift_name("caseInsensitiveName"))); +@end + +__attribute__((swift_name("Ktor_utilsStringValuesBuilderImpl"))) +@interface KASCKtor_utilsStringValuesBuilderImpl : KASCBase +- (instancetype)initWithCaseInsensitiveName:(BOOL)caseInsensitiveName size:(int32_t)size __attribute__((swift_name("init(caseInsensitiveName:size:)"))) __attribute__((objc_designated_initializer)); +- (void)appendName:(NSString *)name value:(NSString *)value __attribute__((swift_name("append(name:value:)"))); +- (void)appendAllStringValues:(id)stringValues __attribute__((swift_name("appendAll(stringValues:)"))); +- (void)appendAllName:(NSString *)name values:(id)values __attribute__((swift_name("appendAll(name:values:)"))); +- (void)appendMissingStringValues:(id)stringValues __attribute__((swift_name("appendMissing(stringValues:)"))); +- (void)appendMissingName:(NSString *)name values:(id)values __attribute__((swift_name("appendMissing(name:values:)"))); +- (id)build __attribute__((swift_name("build()"))); +- (void)clear __attribute__((swift_name("clear()"))); +- (BOOL)containsName:(NSString *)name __attribute__((swift_name("contains(name:)"))); +- (BOOL)containsName:(NSString *)name value:(NSString *)value __attribute__((swift_name("contains(name:value:)"))); +- (NSSet> *)entries __attribute__((swift_name("entries()"))); +- (NSString * _Nullable)getName:(NSString *)name __attribute__((swift_name("get(name:)"))); +- (NSArray * _Nullable)getAllName:(NSString *)name __attribute__((swift_name("getAll(name:)"))); +- (BOOL)isEmpty __attribute__((swift_name("isEmpty()"))); +- (NSSet *)names __attribute__((swift_name("names()"))); +- (void)removeName:(NSString *)name __attribute__((swift_name("remove(name:)"))); +- (BOOL)removeName:(NSString *)name value:(NSString *)value __attribute__((swift_name("remove(name:value:)"))); +- (void)removeKeysWithNoEntries __attribute__((swift_name("removeKeysWithNoEntries()"))); +- (void)setName:(NSString *)name value:(NSString *)value __attribute__((swift_name("set(name:value:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)validateNameName:(NSString *)name __attribute__((swift_name("validateName(name:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)validateValueValue:(NSString *)value __attribute__((swift_name("validateValue(value:)"))); +@property (readonly) BOOL caseInsensitiveName __attribute__((swift_name("caseInsensitiveName"))); + +/** + * @note This property has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +@property (readonly) KASCMutableDictionary *> *values __attribute__((swift_name("values"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpHeadersBuilder"))) +@interface KASCKtor_httpHeadersBuilder : KASCKtor_utilsStringValuesBuilderImpl +- (instancetype)initWithSize:(int32_t)size __attribute__((swift_name("init(size:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithCaseInsensitiveName:(BOOL)caseInsensitiveName size:(int32_t)size __attribute__((swift_name("init(caseInsensitiveName:size:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +- (id)build __attribute__((swift_name("build()"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)validateNameName:(NSString *)name __attribute__((swift_name("validateName(name:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)validateValueValue:(NSString *)value __attribute__((swift_name("validateValue(value:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpRequestBuilder.Companion"))) +@interface KASCKtor_client_coreHttpRequestBuilderCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_client_coreHttpRequestBuilderCompanion *shared __attribute__((swift_name("shared"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpRequestData"))) +@interface KASCKtor_client_coreHttpRequestData : KASCBase +- (instancetype)initWithUrl:(KASCKtor_httpUrl *)url method:(KASCKtor_httpHttpMethod *)method headers:(id)headers body:(KASCKtor_httpOutgoingContent *)body executionContext:(id)executionContext attributes:(id)attributes __attribute__((swift_name("init(url:method:headers:body:executionContext:attributes:)"))) __attribute__((objc_designated_initializer)); +- (id _Nullable)getCapabilityOrNullKey:(id)key __attribute__((swift_name("getCapabilityOrNull(key:)"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) id attributes __attribute__((swift_name("attributes"))); +@property (readonly) KASCKtor_httpOutgoingContent *body __attribute__((swift_name("body"))); +@property (readonly) id executionContext __attribute__((swift_name("executionContext"))); +@property (readonly) id headers __attribute__((swift_name("headers"))); +@property (readonly) KASCKtor_httpHttpMethod *method __attribute__((swift_name("method"))); +@property (readonly) KASCKtor_httpUrl *url __attribute__((swift_name("url"))); +@end + +__attribute__((swift_name("Ktor_client_coreHttpClientEngineCapability"))) +@protocol KASCKtor_client_coreHttpClientEngineCapability +@required +@end + +__attribute__((swift_name("Ktor_utilsAttributes"))) +@protocol KASCKtor_utilsAttributes +@required +- (id)computeIfAbsentKey:(KASCKtor_utilsAttributeKey *)key block:(id (^)(void))block __attribute__((swift_name("computeIfAbsent(key:block:)"))); +- (BOOL)containsKey:(KASCKtor_utilsAttributeKey *)key __attribute__((swift_name("contains(key:)"))); +- (id)getKey:(KASCKtor_utilsAttributeKey *)key __attribute__((swift_name("get(key:)"))); +- (id _Nullable)getOrNullKey:(KASCKtor_utilsAttributeKey *)key __attribute__((swift_name("getOrNull(key:)"))); +- (void)putKey:(KASCKtor_utilsAttributeKey *)key value:(id)value __attribute__((swift_name("put(key:value:)"))); +- (void)removeKey:(KASCKtor_utilsAttributeKey *)key __attribute__((swift_name("remove(key:)"))); +- (id)takeKey:(KASCKtor_utilsAttributeKey *)key __attribute__((swift_name("take(key:)"))); +- (id _Nullable)takeOrNullKey:(KASCKtor_utilsAttributeKey *)key __attribute__((swift_name("takeOrNull(key:)"))); +@property (readonly) NSArray *> *allKeys __attribute__((swift_name("allKeys"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpURLBuilder"))) +@interface KASCKtor_httpURLBuilder : KASCBase +- (instancetype)initWithProtocol:(KASCKtor_httpURLProtocol *)protocol host:(NSString *)host port:(int32_t)port user:(NSString * _Nullable)user password:(NSString * _Nullable)password pathSegments:(NSArray *)pathSegments parameters:(id)parameters fragment:(NSString *)fragment trailingQuery:(BOOL)trailingQuery __attribute__((swift_name("init(protocol:host:port:user:password:pathSegments:parameters:fragment:trailingQuery:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKtor_httpURLBuilderCompanion *companion __attribute__((swift_name("companion"))); +- (KASCKtor_httpUrl *)build __attribute__((swift_name("build()"))); +- (NSString *)buildString __attribute__((swift_name("buildString()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property NSString *encodedFragment __attribute__((swift_name("encodedFragment"))); +@property id encodedParameters __attribute__((swift_name("encodedParameters"))); +@property NSString * _Nullable encodedPassword __attribute__((swift_name("encodedPassword"))); +@property NSArray *encodedPathSegments __attribute__((swift_name("encodedPathSegments"))); +@property NSString * _Nullable encodedUser __attribute__((swift_name("encodedUser"))); +@property NSString *fragment __attribute__((swift_name("fragment"))); +@property NSString *host __attribute__((swift_name("host"))); +@property (readonly) id parameters __attribute__((swift_name("parameters"))); +@property NSString * _Nullable password __attribute__((swift_name("password"))); +@property NSArray *pathSegments __attribute__((swift_name("pathSegments"))); +@property int32_t port __attribute__((swift_name("port"))); +@property KASCKtor_httpURLProtocol *protocol __attribute__((swift_name("protocol"))); +@property BOOL trailingQuery __attribute__((swift_name("trailingQuery"))); +@property NSString * _Nullable user __attribute__((swift_name("user"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_utilsTypeInfo"))) +@interface KASCKtor_utilsTypeInfo : KASCBase +- (instancetype)initWithType:(id)type reifiedType:(id)reifiedType kotlinType:(id _Nullable)kotlinType __attribute__((swift_name("init(type:reifiedType:kotlinType:)"))) __attribute__((objc_designated_initializer)); +- (KASCKtor_utilsTypeInfo *)doCopyType:(id)type reifiedType:(id)reifiedType kotlinType:(id _Nullable)kotlinType __attribute__((swift_name("doCopy(type:reifiedType:kotlinType:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) id _Nullable kotlinType __attribute__((swift_name("kotlinType"))); +@property (readonly) id reifiedType __attribute__((swift_name("reifiedType"))); +@property (readonly) id type __attribute__((swift_name("type"))); +@end + + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.3") +*/ +__attribute__((swift_name("KotlinCoroutineContext"))) +@protocol KASCKotlinCoroutineContext +@required +- (id _Nullable)foldInitial:(id _Nullable)initial operation:(id _Nullable (^)(id _Nullable, id))operation __attribute__((swift_name("fold(initial:operation:)"))); +- (id _Nullable)getKey_:(id)key __attribute__((swift_name("get(key_:)"))); +- (id)minusKeyKey:(id)key __attribute__((swift_name("minusKey(key:)"))); +- (id)plusContext:(id)context __attribute__((swift_name("plus(context:)"))); +@end + +__attribute__((swift_name("KotlinCoroutineContextElement"))) +@protocol KASCKotlinCoroutineContextElement +@required +@property (readonly) id key __attribute__((swift_name("key"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreJob"))) +@protocol KASCKotlinx_coroutines_coreJob +@required +- (id)attachChildChild:(id)child __attribute__((swift_name("attachChild(child:)"))); +- (void)cancelCause:(KASCKotlinCancellationException * _Nullable)cause __attribute__((swift_name("cancel(cause:)"))); +- (KASCKotlinCancellationException *)getCancellationException __attribute__((swift_name("getCancellationException()"))); +- (id)invokeOnCompletionOnCancelling:(BOOL)onCancelling invokeImmediately:(BOOL)invokeImmediately handler:(void (^)(KASCKotlinThrowable * _Nullable))handler __attribute__((swift_name("invokeOnCompletion(onCancelling:invokeImmediately:handler:)"))); +- (id)invokeOnCompletionHandler:(void (^)(KASCKotlinThrowable * _Nullable))handler __attribute__((swift_name("invokeOnCompletion(handler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)joinWithCompletionHandler:(void (^)(NSError * _Nullable))completionHandler __attribute__((swift_name("join(completionHandler:)"))); +- (id)plusOther:(id)other __attribute__((swift_name("plus(other:)"))) __attribute__((unavailable("Operator '+' on two Job objects is meaningless. Job is a coroutine context element and `+` is a set-sum operator for coroutine contexts. The job to the right of `+` just replaces the job the left of `+`."))); +- (BOOL)start __attribute__((swift_name("start()"))); +@property (readonly) id children __attribute__((swift_name("children"))); +@property (readonly) BOOL isActive __attribute__((swift_name("isActive"))); +@property (readonly) BOOL isCancelled __attribute__((swift_name("isCancelled"))); +@property (readonly) BOOL isCompleted __attribute__((swift_name("isCompleted"))); +@property (readonly) id onJoin __attribute__((swift_name("onJoin"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpHttpMethod"))) +@interface KASCKtor_httpHttpMethod : KASCBase +- (instancetype)initWithValue:(NSString *)value __attribute__((swift_name("init(value:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKtor_httpHttpMethodCompanion *companion __attribute__((swift_name("companion"))); +- (KASCKtor_httpHttpMethod *)doCopyValue:(NSString *)value __attribute__((swift_name("doCopy(value:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *value __attribute__((swift_name("value"))); +@end + +__attribute__((swift_name("Ktor_client_coreHttpClientEngine"))) +@protocol KASCKtor_client_coreHttpClientEngine +@required + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)executeData:(KASCKtor_client_coreHttpRequestData *)data completionHandler:(void (^)(KASCKtor_client_coreHttpResponseData * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("execute(data:completionHandler:)"))); +- (void)installClient:(KASCKtor_client_coreHttpClient *)client __attribute__((swift_name("install(client:)"))); +@property (readonly) KASCKtor_client_coreHttpClientEngineConfig *config __attribute__((swift_name("config"))); +@property (readonly) KASCKotlinx_coroutines_coreCoroutineDispatcher *dispatcher __attribute__((swift_name("dispatcher"))); +@property (readonly) NSSet> *supportedCapabilities __attribute__((swift_name("supportedCapabilities"))); +@end + +__attribute__((swift_name("Ktor_client_coreHttpClientEngineConfig"))) +@interface KASCKtor_client_coreHttpClientEngineConfig : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@property BOOL pipelining __attribute__((swift_name("pipelining"))); +@property KASCKtor_client_coreProxyConfig * _Nullable proxy __attribute__((swift_name("proxy"))); +@property int32_t threadsCount __attribute__((swift_name("threadsCount"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpClientConfig"))) +@interface KASCKtor_client_coreHttpClientConfig : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (KASCKtor_client_coreHttpClientConfig *)clone __attribute__((swift_name("clone()"))); +- (void)engineBlock:(void (^)(T))block __attribute__((swift_name("engine(block:)"))); +- (void)installClient:(KASCKtor_client_coreHttpClient *)client __attribute__((swift_name("install(client:)"))); +- (void)installPlugin:(id)plugin configure:(void (^)(id))configure __attribute__((swift_name("install(plugin:configure:)"))); +- (void)installKey:(NSString *)key block:(void (^)(KASCKtor_client_coreHttpClient *))block __attribute__((swift_name("install(key:block:)"))); +- (void)plusAssignOther:(KASCKtor_client_coreHttpClientConfig *)other __attribute__((swift_name("plusAssign(other:)"))); +@property BOOL developmentMode __attribute__((swift_name("developmentMode"))); +@property BOOL expectSuccess __attribute__((swift_name("expectSuccess"))); +@property BOOL followRedirects __attribute__((swift_name("followRedirects"))); +@property BOOL useDefaultTransformers __attribute__((swift_name("useDefaultTransformers"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_eventsEvents"))) +@interface KASCKtor_eventsEvents : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (void)raiseDefinition:(KASCKtor_eventsEventDefinition *)definition value:(id _Nullable)value __attribute__((swift_name("raise(definition:value:)"))); +- (id)subscribeDefinition:(KASCKtor_eventsEventDefinition *)definition handler:(void (^)(id _Nullable))handler __attribute__((swift_name("subscribe(definition:handler:)"))); +- (void)unsubscribeDefinition:(KASCKtor_eventsEventDefinition *)definition handler:(void (^)(id _Nullable))handler __attribute__((swift_name("unsubscribe(definition:handler:)"))); +@end + +__attribute__((swift_name("Ktor_utilsPipeline"))) +@interface KASCKtor_utilsPipeline : KASCBase +- (instancetype)initWithPhase:(KASCKtor_utilsPipelinePhase *)phase interceptors:(NSArray> *)interceptors __attribute__((swift_name("init(phase:interceptors:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithPhases:(KASCKotlinArray *)phases __attribute__((swift_name("init(phases:)"))) __attribute__((objc_designated_initializer)); +- (void)addPhasePhase:(KASCKtor_utilsPipelinePhase *)phase __attribute__((swift_name("addPhase(phase:)"))); +- (void)afterIntercepted __attribute__((swift_name("afterIntercepted()"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)executeContext:(TContext)context subject:(TSubject)subject completionHandler:(void (^)(TSubject _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("execute(context:subject:completionHandler:)"))); +- (void)insertPhaseAfterReference:(KASCKtor_utilsPipelinePhase *)reference phase:(KASCKtor_utilsPipelinePhase *)phase __attribute__((swift_name("insertPhaseAfter(reference:phase:)"))); +- (void)insertPhaseBeforeReference:(KASCKtor_utilsPipelinePhase *)reference phase:(KASCKtor_utilsPipelinePhase *)phase __attribute__((swift_name("insertPhaseBefore(reference:phase:)"))); +- (void)interceptPhase:(KASCKtor_utilsPipelinePhase *)phase block:(id)block __attribute__((swift_name("intercept(phase:block:)"))); +- (NSArray> *)interceptorsForPhasePhase:(KASCKtor_utilsPipelinePhase *)phase __attribute__((swift_name("interceptorsForPhase(phase:)"))); +- (void)mergeFrom:(KASCKtor_utilsPipeline *)from __attribute__((swift_name("merge(from:)"))); +- (void)mergePhasesFrom:(KASCKtor_utilsPipeline *)from __attribute__((swift_name("mergePhases(from:)"))); +- (void)resetFromFrom:(KASCKtor_utilsPipeline *)from __attribute__((swift_name("resetFrom(from:)"))); +@property (readonly) id attributes __attribute__((swift_name("attributes"))); +@property (readonly) BOOL developmentMode __attribute__((swift_name("developmentMode"))); +@property (readonly, getter=isEmpty_) BOOL isEmpty __attribute__((swift_name("isEmpty"))); +@property (readonly) NSArray *items __attribute__((swift_name("items"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpReceivePipeline"))) +@interface KASCKtor_client_coreHttpReceivePipeline : KASCKtor_utilsPipeline +- (instancetype)initWithDevelopmentMode:(BOOL)developmentMode __attribute__((swift_name("init(developmentMode:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithPhase:(KASCKtor_utilsPipelinePhase *)phase interceptors:(NSArray> *)interceptors __attribute__((swift_name("init(phase:interceptors:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +- (instancetype)initWithPhases:(KASCKotlinArray *)phases __attribute__((swift_name("init(phases:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCKtor_client_coreHttpReceivePipelinePhases *companion __attribute__((swift_name("companion"))); +@property (readonly) BOOL developmentMode __attribute__((swift_name("developmentMode"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpRequestPipeline"))) +@interface KASCKtor_client_coreHttpRequestPipeline : KASCKtor_utilsPipeline +- (instancetype)initWithDevelopmentMode:(BOOL)developmentMode __attribute__((swift_name("init(developmentMode:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithPhase:(KASCKtor_utilsPipelinePhase *)phase interceptors:(NSArray> *)interceptors __attribute__((swift_name("init(phase:interceptors:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +- (instancetype)initWithPhases:(KASCKotlinArray *)phases __attribute__((swift_name("init(phases:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCKtor_client_coreHttpRequestPipelinePhases *companion __attribute__((swift_name("companion"))); +@property (readonly) BOOL developmentMode __attribute__((swift_name("developmentMode"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpResponsePipeline"))) +@interface KASCKtor_client_coreHttpResponsePipeline : KASCKtor_utilsPipeline +- (instancetype)initWithDevelopmentMode:(BOOL)developmentMode __attribute__((swift_name("init(developmentMode:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithPhase:(KASCKtor_utilsPipelinePhase *)phase interceptors:(NSArray> *)interceptors __attribute__((swift_name("init(phase:interceptors:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +- (instancetype)initWithPhases:(KASCKotlinArray *)phases __attribute__((swift_name("init(phases:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCKtor_client_coreHttpResponsePipelinePhases *companion __attribute__((swift_name("companion"))); +@property (readonly) BOOL developmentMode __attribute__((swift_name("developmentMode"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpSendPipeline"))) +@interface KASCKtor_client_coreHttpSendPipeline : KASCKtor_utilsPipeline +- (instancetype)initWithDevelopmentMode:(BOOL)developmentMode __attribute__((swift_name("init(developmentMode:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithPhase:(KASCKtor_utilsPipelinePhase *)phase interceptors:(NSArray> *)interceptors __attribute__((swift_name("init(phase:interceptors:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +- (instancetype)initWithPhases:(KASCKotlinArray *)phases __attribute__((swift_name("init(phases:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCKtor_client_coreHttpSendPipelinePhases *companion __attribute__((swift_name("companion"))); +@property (readonly) BOOL developmentMode __attribute__((swift_name("developmentMode"))); +@end + +__attribute__((swift_name("Ktor_utilsStringValues"))) +@protocol KASCKtor_utilsStringValues +@required +- (BOOL)containsName:(NSString *)name __attribute__((swift_name("contains(name:)"))); +- (BOOL)containsName:(NSString *)name value:(NSString *)value __attribute__((swift_name("contains(name:value:)"))); +- (NSSet> *)entries __attribute__((swift_name("entries()"))); +- (void)forEachBody:(void (^)(NSString *, NSArray *))body __attribute__((swift_name("forEach(body:)"))); +- (NSString * _Nullable)getName:(NSString *)name __attribute__((swift_name("get(name:)"))); +- (NSArray * _Nullable)getAllName:(NSString *)name __attribute__((swift_name("getAll(name:)"))); +- (BOOL)isEmpty __attribute__((swift_name("isEmpty()"))); +- (NSSet *)names __attribute__((swift_name("names()"))); +@property (readonly) BOOL caseInsensitiveName __attribute__((swift_name("caseInsensitiveName"))); +@end + +__attribute__((swift_name("Ktor_httpHeaders"))) +@protocol KASCKtor_httpHeaders +@required +@end + +__attribute__((swift_name("Ktor_client_coreHttpClientCall"))) +@interface KASCKtor_client_coreHttpClientCall : KASCBase +- (instancetype)initWithClient:(KASCKtor_client_coreHttpClient *)client requestData:(KASCKtor_client_coreHttpRequestData *)requestData responseData:(KASCKtor_client_coreHttpResponseData *)responseData __attribute__((swift_name("init(client:requestData:responseData:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithClient:(KASCKtor_client_coreHttpClient *)client __attribute__((swift_name("init(client:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKtor_client_coreHttpClientCallCompanion *companion __attribute__((swift_name("companion"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)bodyInfo:(KASCKtor_utilsTypeInfo *)info completionHandler:(void (^)(id _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("body(info:completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)bodyNullableInfo:(KASCKtor_utilsTypeInfo *)info completionHandler:(void (^)(id _Nullable_result, NSError * _Nullable))completionHandler __attribute__((swift_name("bodyNullable(info:completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)getResponseContentWithCompletionHandler:(void (^)(id _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("getResponseContent(completionHandler:)"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** + * @note This property has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +@property (readonly) BOOL allowDoubleReceive __attribute__((swift_name("allowDoubleReceive"))); +@property (readonly) id attributes __attribute__((swift_name("attributes"))); +@property (readonly) KASCKtor_client_coreHttpClient *client __attribute__((swift_name("client"))); +@property (readonly) id coroutineContext __attribute__((swift_name("coroutineContext"))); +@property id request __attribute__((swift_name("request"))); +@property KASCKtor_client_coreHttpResponse *response __attribute__((swift_name("response"))); +@end + +__attribute__((swift_name("Ktor_ioByteReadChannel"))) +@protocol KASCKtor_ioByteReadChannel +@required + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)awaitContentWithCompletionHandler:(void (^)(NSError * _Nullable))completionHandler __attribute__((swift_name("awaitContent(completionHandler:)"))); +- (BOOL)cancelCause_:(KASCKotlinThrowable * _Nullable)cause __attribute__((swift_name("cancel(cause_:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)discardMax:(int64_t)max completionHandler:(void (^)(KASCLong * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("discard(max:completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)peekToDestination:(KASCKtor_ioMemory *)destination destinationOffset:(int64_t)destinationOffset offset:(int64_t)offset min:(int64_t)min max:(int64_t)max completionHandler:(void (^)(KASCLong * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("peekTo(destination:destinationOffset:offset:min:max:completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readAvailableDst:(KASCKtor_ioChunkBuffer *)dst completionHandler:(void (^)(KASCInt * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readAvailable(dst:completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readAvailableDst:(KASCKotlinByteArray *)dst offset:(int32_t)offset length:(int32_t)length completionHandler:(void (^)(KASCInt * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readAvailable(dst:offset:length:completionHandler:)"))); +- (int32_t)readAvailableMin:(int32_t)min block:(void (^)(KASCKtor_ioBuffer *))block __attribute__((swift_name("readAvailable(min:block:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readAvailableDst:(void *)dst offset:(int32_t)offset length:(int32_t)length completionHandler_:(void (^)(KASCInt * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readAvailable(dst:offset:length:completionHandler_:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readAvailableDst:(void *)dst offset:(int64_t)offset length:(int64_t)length completionHandler__:(void (^)(KASCInt * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readAvailable(dst:offset:length:completionHandler__:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readBooleanWithCompletionHandler:(void (^)(KASCBoolean * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readBoolean(completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readByteWithCompletionHandler:(void (^)(KASCByte * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readByte(completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readDoubleWithCompletionHandler:(void (^)(KASCDouble * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readDouble(completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readFloatWithCompletionHandler:(void (^)(KASCFloat * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readFloat(completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readFullyDst:(KASCKtor_ioChunkBuffer *)dst n:(int32_t)n completionHandler:(void (^)(NSError * _Nullable))completionHandler __attribute__((swift_name("readFully(dst:n:completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readFullyDst:(KASCKotlinByteArray *)dst offset:(int32_t)offset length:(int32_t)length completionHandler:(void (^)(NSError * _Nullable))completionHandler __attribute__((swift_name("readFully(dst:offset:length:completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readFullyDst:(void *)dst offset:(int32_t)offset length:(int32_t)length completionHandler_:(void (^)(NSError * _Nullable))completionHandler __attribute__((swift_name("readFully(dst:offset:length:completionHandler_:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readFullyDst:(void *)dst offset:(int64_t)offset length:(int64_t)length completionHandler__:(void (^)(NSError * _Nullable))completionHandler __attribute__((swift_name("readFully(dst:offset:length:completionHandler__:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readIntWithCompletionHandler:(void (^)(KASCInt * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readInt(completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readLongWithCompletionHandler:(void (^)(KASCLong * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readLong(completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readPacketSize:(int32_t)size completionHandler:(void (^)(KASCKtor_ioByteReadPacket * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readPacket(size:completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readRemainingLimit:(int64_t)limit completionHandler:(void (^)(KASCKtor_ioByteReadPacket * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readRemaining(limit:completionHandler:)"))); +- (void)readSessionConsumer:(void (^)(id))consumer __attribute__((swift_name("readSession(consumer:)"))) __attribute__((deprecated("Use read { } instead."))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readShortWithCompletionHandler:(void (^)(KASCShort * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readShort(completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readSuspendableSessionConsumer:(id)consumer completionHandler:(void (^)(NSError * _Nullable))completionHandler __attribute__((swift_name("readSuspendableSession(consumer:completionHandler:)"))) __attribute__((deprecated("Use read { } instead."))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readUTF8LineLimit:(int32_t)limit completionHandler:(void (^)(NSString * _Nullable_result, NSError * _Nullable))completionHandler __attribute__((swift_name("readUTF8Line(limit:completionHandler:)"))); + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)readUTF8LineToOut:(id)out limit:(int32_t)limit completionHandler:(void (^)(KASCBoolean * _Nullable, NSError * _Nullable))completionHandler __attribute__((swift_name("readUTF8LineTo(out:limit:completionHandler:)"))); +@property (readonly) int32_t availableForRead __attribute__((swift_name("availableForRead"))); +@property (readonly) KASCKotlinThrowable * _Nullable closedCause __attribute__((swift_name("closedCause"))); +@property (readonly) BOOL isClosedForRead __attribute__((swift_name("isClosedForRead"))); +@property (readonly) BOOL isClosedForWrite __attribute__((swift_name("isClosedForWrite"))); +@property (readonly) int64_t totalBytesRead __attribute__((swift_name("totalBytesRead"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_utilsGMTDate"))) +@interface KASCKtor_utilsGMTDate : KASCBase +@property (class, readonly, getter=companion) KASCKtor_utilsGMTDateCompanion *companion __attribute__((swift_name("companion"))); +- (int32_t)compareToOther:(KASCKtor_utilsGMTDate *)other __attribute__((swift_name("compareTo(other:)"))); +- (KASCKtor_utilsGMTDate *)doCopySeconds:(int32_t)seconds minutes:(int32_t)minutes hours:(int32_t)hours dayOfWeek:(KASCKtor_utilsWeekDay *)dayOfWeek dayOfMonth:(int32_t)dayOfMonth dayOfYear:(int32_t)dayOfYear month:(KASCKtor_utilsMonth *)month year:(int32_t)year timestamp:(int64_t)timestamp __attribute__((swift_name("doCopy(seconds:minutes:hours:dayOfWeek:dayOfMonth:dayOfYear:month:year:timestamp:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) int32_t dayOfMonth __attribute__((swift_name("dayOfMonth"))); +@property (readonly) KASCKtor_utilsWeekDay *dayOfWeek __attribute__((swift_name("dayOfWeek"))); +@property (readonly) int32_t dayOfYear __attribute__((swift_name("dayOfYear"))); +@property (readonly) int32_t hours __attribute__((swift_name("hours"))); +@property (readonly) int32_t minutes __attribute__((swift_name("minutes"))); +@property (readonly) KASCKtor_utilsMonth *month __attribute__((swift_name("month"))); +@property (readonly) int32_t seconds __attribute__((swift_name("seconds"))); +@property (readonly) int64_t timestamp __attribute__((swift_name("timestamp"))); +@property (readonly) int32_t year __attribute__((swift_name("year"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpHttpStatusCode"))) +@interface KASCKtor_httpHttpStatusCode : KASCBase +- (instancetype)initWithValue:(int32_t)value description:(NSString *)description __attribute__((swift_name("init(value:description:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKtor_httpHttpStatusCodeCompanion *companion __attribute__((swift_name("companion"))); +- (KASCKtor_httpHttpStatusCode *)doCopyValue:(int32_t)value description:(NSString *)description __attribute__((swift_name("doCopy(value:description:)"))); +- (KASCKtor_httpHttpStatusCode *)descriptionValue:(NSString *)value __attribute__((swift_name("description(value:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *description_ __attribute__((swift_name("description_"))); +@property (readonly) int32_t value __attribute__((swift_name("value"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpHttpProtocolVersion"))) +@interface KASCKtor_httpHttpProtocolVersion : KASCBase +- (instancetype)initWithName:(NSString *)name major:(int32_t)major minor:(int32_t)minor __attribute__((swift_name("init(name:major:minor:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKtor_httpHttpProtocolVersionCompanion *companion __attribute__((swift_name("companion"))); +- (KASCKtor_httpHttpProtocolVersion *)doCopyName:(NSString *)name major:(int32_t)major minor:(int32_t)minor __attribute__((swift_name("doCopy(name:major:minor:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) int32_t major __attribute__((swift_name("major"))); +@property (readonly) int32_t minor __attribute__((swift_name("minor"))); +@property (readonly) NSString *name __attribute__((swift_name("name"))); +@end + +__attribute__((swift_name("Kotlinx_serialization_coreCompositeEncoder"))) +@protocol KASCKotlinx_serialization_coreCompositeEncoder +@required +- (void)encodeBooleanElementDescriptor:(id)descriptor index:(int32_t)index value:(BOOL)value __attribute__((swift_name("encodeBooleanElement(descriptor:index:value:)"))); +- (void)encodeByteElementDescriptor:(id)descriptor index:(int32_t)index value:(int8_t)value __attribute__((swift_name("encodeByteElement(descriptor:index:value:)"))); +- (void)encodeCharElementDescriptor:(id)descriptor index:(int32_t)index value:(unichar)value __attribute__((swift_name("encodeCharElement(descriptor:index:value:)"))); +- (void)encodeDoubleElementDescriptor:(id)descriptor index:(int32_t)index value:(double)value __attribute__((swift_name("encodeDoubleElement(descriptor:index:value:)"))); +- (void)encodeFloatElementDescriptor:(id)descriptor index:(int32_t)index value:(float)value __attribute__((swift_name("encodeFloatElement(descriptor:index:value:)"))); +- (id)encodeInlineElementDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("encodeInlineElement(descriptor:index:)"))); +- (void)encodeIntElementDescriptor:(id)descriptor index:(int32_t)index value:(int32_t)value __attribute__((swift_name("encodeIntElement(descriptor:index:value:)"))); +- (void)encodeLongElementDescriptor:(id)descriptor index:(int32_t)index value:(int64_t)value __attribute__((swift_name("encodeLongElement(descriptor:index:value:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (void)encodeNullableSerializableElementDescriptor:(id)descriptor index:(int32_t)index serializer:(id)serializer value:(id _Nullable)value __attribute__((swift_name("encodeNullableSerializableElement(descriptor:index:serializer:value:)"))); +- (void)encodeSerializableElementDescriptor:(id)descriptor index:(int32_t)index serializer:(id)serializer value:(id _Nullable)value __attribute__((swift_name("encodeSerializableElement(descriptor:index:serializer:value:)"))); +- (void)encodeShortElementDescriptor:(id)descriptor index:(int32_t)index value:(int16_t)value __attribute__((swift_name("encodeShortElement(descriptor:index:value:)"))); +- (void)encodeStringElementDescriptor:(id)descriptor index:(int32_t)index value:(NSString *)value __attribute__((swift_name("encodeStringElement(descriptor:index:value:)"))); +- (void)endStructureDescriptor:(id)descriptor __attribute__((swift_name("endStructure(descriptor:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (BOOL)shouldEncodeElementDefaultDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("shouldEncodeElementDefault(descriptor:index:)"))); +@property (readonly) KASCKotlinx_serialization_coreSerializersModule *serializersModule __attribute__((swift_name("serializersModule"))); +@end + +__attribute__((swift_name("Kotlinx_serialization_coreSerializersModule"))) +@interface KASCKotlinx_serialization_coreSerializersModule : KASCBase + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (void)dumpToCollector:(id)collector __attribute__((swift_name("dumpTo(collector:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (id _Nullable)getContextualKClass:(id)kClass typeArgumentsSerializers:(NSArray> *)typeArgumentsSerializers __attribute__((swift_name("getContextual(kClass:typeArgumentsSerializers:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (id _Nullable)getPolymorphicBaseClass:(id)baseClass value:(id)value __attribute__((swift_name("getPolymorphic(baseClass:value:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (id _Nullable)getPolymorphicBaseClass:(id)baseClass serializedClassName:(NSString * _Nullable)serializedClassName __attribute__((swift_name("getPolymorphic(baseClass:serializedClassName:)"))); +@end + +__attribute__((swift_name("KotlinAnnotation"))) +@protocol KASCKotlinAnnotation +@required +@end + + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +__attribute__((swift_name("Kotlinx_serialization_coreSerialKind"))) +@interface KASCKotlinx_serialization_coreSerialKind : KASCBase +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@end + +__attribute__((swift_name("Kotlinx_serialization_coreCompositeDecoder"))) +@protocol KASCKotlinx_serialization_coreCompositeDecoder +@required +- (BOOL)decodeBooleanElementDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("decodeBooleanElement(descriptor:index:)"))); +- (int8_t)decodeByteElementDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("decodeByteElement(descriptor:index:)"))); +- (unichar)decodeCharElementDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("decodeCharElement(descriptor:index:)"))); +- (int32_t)decodeCollectionSizeDescriptor:(id)descriptor __attribute__((swift_name("decodeCollectionSize(descriptor:)"))); +- (double)decodeDoubleElementDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("decodeDoubleElement(descriptor:index:)"))); +- (int32_t)decodeElementIndexDescriptor:(id)descriptor __attribute__((swift_name("decodeElementIndex(descriptor:)"))); +- (float)decodeFloatElementDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("decodeFloatElement(descriptor:index:)"))); +- (id)decodeInlineElementDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("decodeInlineElement(descriptor:index:)"))); +- (int32_t)decodeIntElementDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("decodeIntElement(descriptor:index:)"))); +- (int64_t)decodeLongElementDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("decodeLongElement(descriptor:index:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (id _Nullable)decodeNullableSerializableElementDescriptor:(id)descriptor index:(int32_t)index deserializer:(id)deserializer previousValue:(id _Nullable)previousValue __attribute__((swift_name("decodeNullableSerializableElement(descriptor:index:deserializer:previousValue:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (BOOL)decodeSequentially __attribute__((swift_name("decodeSequentially()"))); +- (id _Nullable)decodeSerializableElementDescriptor:(id)descriptor index:(int32_t)index deserializer:(id)deserializer previousValue:(id _Nullable)previousValue __attribute__((swift_name("decodeSerializableElement(descriptor:index:deserializer:previousValue:)"))); +- (int16_t)decodeShortElementDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("decodeShortElement(descriptor:index:)"))); +- (NSString *)decodeStringElementDescriptor:(id)descriptor index:(int32_t)index __attribute__((swift_name("decodeStringElement(descriptor:index:)"))); +- (void)endStructureDescriptor:(id)descriptor __attribute__((swift_name("endStructure(descriptor:)"))); +@property (readonly) KASCKotlinx_serialization_coreSerializersModule *serializersModule __attribute__((swift_name("serializersModule"))); +@end + +__attribute__((swift_name("KotlinMapEntry"))) +@protocol KASCKotlinMapEntry +@required +@property (readonly) id _Nullable key __attribute__((swift_name("key"))); +@property (readonly) id _Nullable value __attribute__((swift_name("value"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpUrl"))) +@interface KASCKtor_httpUrl : KASCBase +@property (class, readonly, getter=companion) KASCKtor_httpUrlCompanion *companion __attribute__((swift_name("companion"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *encodedFragment __attribute__((swift_name("encodedFragment"))); +@property (readonly) NSString * _Nullable encodedPassword __attribute__((swift_name("encodedPassword"))); +@property (readonly) NSString *encodedPath __attribute__((swift_name("encodedPath"))); +@property (readonly) NSString *encodedPathAndQuery __attribute__((swift_name("encodedPathAndQuery"))); +@property (readonly) NSString *encodedQuery __attribute__((swift_name("encodedQuery"))); +@property (readonly) NSString * _Nullable encodedUser __attribute__((swift_name("encodedUser"))); +@property (readonly) NSString *fragment __attribute__((swift_name("fragment"))); +@property (readonly) NSString *host __attribute__((swift_name("host"))); +@property (readonly) id parameters __attribute__((swift_name("parameters"))); +@property (readonly) NSString * _Nullable password __attribute__((swift_name("password"))); +@property (readonly) NSArray *pathSegments __attribute__((swift_name("pathSegments"))); +@property (readonly) int32_t port __attribute__((swift_name("port"))); +@property (readonly) KASCKtor_httpURLProtocol *protocol __attribute__((swift_name("protocol"))); +@property (readonly) int32_t specifiedPort __attribute__((swift_name("specifiedPort"))); +@property (readonly) BOOL trailingQuery __attribute__((swift_name("trailingQuery"))); +@property (readonly) NSString * _Nullable user __attribute__((swift_name("user"))); +@end + +__attribute__((swift_name("Ktor_httpOutgoingContent"))) +@interface KASCKtor_httpOutgoingContent : KASCBase +- (id _Nullable)getPropertyKey:(KASCKtor_utilsAttributeKey *)key __attribute__((swift_name("getProperty(key:)"))); +- (void)setPropertyKey:(KASCKtor_utilsAttributeKey *)key value:(id _Nullable)value __attribute__((swift_name("setProperty(key:value:)"))); +- (id _Nullable)trailers __attribute__((swift_name("trailers()"))); +@property (readonly) KASCLong * _Nullable contentLength __attribute__((swift_name("contentLength"))); +@property (readonly) KASCKtor_httpContentType * _Nullable contentType __attribute__((swift_name("contentType"))); +@property (readonly) id headers __attribute__((swift_name("headers"))); +@property (readonly) KASCKtor_httpHttpStatusCode * _Nullable status __attribute__((swift_name("status"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_utilsAttributeKey"))) +@interface KASCKtor_utilsAttributeKey : KASCBase +- (instancetype)initWithName:(NSString *)name __attribute__((swift_name("init(name:)"))) __attribute__((objc_designated_initializer)); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *name __attribute__((swift_name("name"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpURLProtocol"))) +@interface KASCKtor_httpURLProtocol : KASCBase +- (instancetype)initWithName:(NSString *)name defaultPort:(int32_t)defaultPort __attribute__((swift_name("init(name:defaultPort:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKtor_httpURLProtocolCompanion *companion __attribute__((swift_name("companion"))); +- (KASCKtor_httpURLProtocol *)doCopyName:(NSString *)name defaultPort:(int32_t)defaultPort __attribute__((swift_name("doCopy(name:defaultPort:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) int32_t defaultPort __attribute__((swift_name("defaultPort"))); +@property (readonly) NSString *name __attribute__((swift_name("name"))); +@end + +__attribute__((swift_name("Ktor_httpParameters"))) +@protocol KASCKtor_httpParameters +@required +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpURLBuilder.Companion"))) +@interface KASCKtor_httpURLBuilderCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_httpURLBuilderCompanion *shared __attribute__((swift_name("shared"))); +@end + +__attribute__((swift_name("Ktor_httpParametersBuilder"))) +@protocol KASCKtor_httpParametersBuilder +@required +@end + +__attribute__((swift_name("KotlinKDeclarationContainer"))) +@protocol KASCKotlinKDeclarationContainer +@required +@end + +__attribute__((swift_name("KotlinKAnnotatedElement"))) +@protocol KASCKotlinKAnnotatedElement +@required +@end + + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.1") +*/ +__attribute__((swift_name("KotlinKClassifier"))) +@protocol KASCKotlinKClassifier +@required +@end + +__attribute__((swift_name("KotlinKClass"))) +@protocol KASCKotlinKClass +@required + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.1") +*/ +- (BOOL)isInstanceValue:(id _Nullable)value __attribute__((swift_name("isInstance(value:)"))); +@property (readonly) NSString * _Nullable qualifiedName __attribute__((swift_name("qualifiedName"))); +@property (readonly) NSString * _Nullable simpleName __attribute__((swift_name("simpleName"))); +@end + +__attribute__((swift_name("KotlinKType"))) +@protocol KASCKotlinKType +@required + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.1") +*/ +@property (readonly) NSArray *arguments __attribute__((swift_name("arguments"))); + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.1") +*/ +@property (readonly) id _Nullable classifier __attribute__((swift_name("classifier"))); +@property (readonly) BOOL isMarkedNullable __attribute__((swift_name("isMarkedNullable"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreDisposableHandle"))) +@protocol KASCKotlinx_coroutines_coreDisposableHandle +@required +- (void)dispose __attribute__((swift_name("dispose()"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreChildHandle"))) +@protocol KASCKotlinx_coroutines_coreChildHandle +@required +- (BOOL)childCancelledCause:(KASCKotlinThrowable *)cause __attribute__((swift_name("childCancelled(cause:)"))); +@property (readonly) id _Nullable parent __attribute__((swift_name("parent"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreChildJob"))) +@protocol KASCKotlinx_coroutines_coreChildJob +@required +- (void)parentCancelledParentJob:(id)parentJob __attribute__((swift_name("parentCancelled(parentJob:)"))); +@end + +__attribute__((swift_name("KotlinSequence"))) +@protocol KASCKotlinSequence +@required +- (id)iterator __attribute__((swift_name("iterator()"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreSelectClause0"))) +@protocol KASCKotlinx_coroutines_coreSelectClause0 +@required +- (void)registerSelectClause0Select:(id)select block:(id)block __attribute__((swift_name("registerSelectClause0(select:block:)"))); +@end + +__attribute__((swift_name("KotlinCoroutineContextKey"))) +@protocol KASCKotlinCoroutineContextKey +@required +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpHttpMethod.Companion"))) +@interface KASCKtor_httpHttpMethodCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_httpHttpMethodCompanion *shared __attribute__((swift_name("shared"))); +- (KASCKtor_httpHttpMethod *)parseMethod:(NSString *)method __attribute__((swift_name("parse(method:)"))); +@property (readonly) NSArray *DefaultMethods __attribute__((swift_name("DefaultMethods"))); +@property (readonly) KASCKtor_httpHttpMethod *Delete __attribute__((swift_name("Delete"))); +@property (readonly) KASCKtor_httpHttpMethod *Get __attribute__((swift_name("Get"))); +@property (readonly) KASCKtor_httpHttpMethod *Head __attribute__((swift_name("Head"))); +@property (readonly) KASCKtor_httpHttpMethod *Options __attribute__((swift_name("Options"))); +@property (readonly) KASCKtor_httpHttpMethod *Patch __attribute__((swift_name("Patch"))); +@property (readonly) KASCKtor_httpHttpMethod *Post __attribute__((swift_name("Post"))); +@property (readonly) KASCKtor_httpHttpMethod *Put __attribute__((swift_name("Put"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpResponseData"))) +@interface KASCKtor_client_coreHttpResponseData : KASCBase +- (instancetype)initWithStatusCode:(KASCKtor_httpHttpStatusCode *)statusCode requestTime:(KASCKtor_utilsGMTDate *)requestTime headers:(id)headers version:(KASCKtor_httpHttpProtocolVersion *)version body:(id)body callContext:(id)callContext __attribute__((swift_name("init(statusCode:requestTime:headers:version:body:callContext:)"))) __attribute__((objc_designated_initializer)); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) id body __attribute__((swift_name("body"))); +@property (readonly) id callContext __attribute__((swift_name("callContext"))); +@property (readonly) id headers __attribute__((swift_name("headers"))); +@property (readonly) KASCKtor_utilsGMTDate *requestTime __attribute__((swift_name("requestTime"))); +@property (readonly) KASCKtor_utilsGMTDate *responseTime __attribute__((swift_name("responseTime"))); +@property (readonly) KASCKtor_httpHttpStatusCode *statusCode __attribute__((swift_name("statusCode"))); +@property (readonly) KASCKtor_httpHttpProtocolVersion *version __attribute__((swift_name("version"))); +@end + + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.3") +*/ +__attribute__((swift_name("KotlinAbstractCoroutineContextElement"))) +@interface KASCKotlinAbstractCoroutineContextElement : KASCBase +- (instancetype)initWithKey:(id)key __attribute__((swift_name("init(key:)"))) __attribute__((objc_designated_initializer)); +@property (readonly) id key __attribute__((swift_name("key"))); +@end + + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.3") +*/ +__attribute__((swift_name("KotlinContinuationInterceptor"))) +@protocol KASCKotlinContinuationInterceptor +@required +- (id)interceptContinuationContinuation:(id)continuation __attribute__((swift_name("interceptContinuation(continuation:)"))); +- (void)releaseInterceptedContinuationContinuation:(id)continuation __attribute__((swift_name("releaseInterceptedContinuation(continuation:)"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreCoroutineDispatcher"))) +@interface KASCKotlinx_coroutines_coreCoroutineDispatcher : KASCKotlinAbstractCoroutineContextElement +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (instancetype)initWithKey:(id)key __attribute__((swift_name("init(key:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCKotlinx_coroutines_coreCoroutineDispatcherKey *companion __attribute__((swift_name("companion"))); +- (void)dispatchContext:(id)context block:(id)block __attribute__((swift_name("dispatch(context:block:)"))); +- (void)dispatchYieldContext:(id)context block:(id)block __attribute__((swift_name("dispatchYield(context:block:)"))); +- (id)interceptContinuationContinuation:(id)continuation __attribute__((swift_name("interceptContinuation(continuation:)"))); +- (BOOL)isDispatchNeededContext:(id)context __attribute__((swift_name("isDispatchNeeded(context:)"))); + +/** + * @note annotations + * kotlinx.coroutines.ExperimentalCoroutinesApi +*/ +- (KASCKotlinx_coroutines_coreCoroutineDispatcher *)limitedParallelismParallelism:(int32_t)parallelism __attribute__((swift_name("limitedParallelism(parallelism:)"))); +- (KASCKotlinx_coroutines_coreCoroutineDispatcher *)plusOther_:(KASCKotlinx_coroutines_coreCoroutineDispatcher *)other __attribute__((swift_name("plus(other_:)"))) __attribute__((unavailable("Operator '+' on two CoroutineDispatcher objects is meaningless. CoroutineDispatcher is a coroutine context element and `+` is a set-sum operator for coroutine contexts. The dispatcher to the right of `+` just replaces the dispatcher to the left."))); +- (void)releaseInterceptedContinuationContinuation:(id)continuation __attribute__((swift_name("releaseInterceptedContinuation(continuation:)"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreProxyConfig"))) +@interface KASCKtor_client_coreProxyConfig : KASCBase +- (instancetype)initWithUrl:(KASCKtor_httpUrl *)url __attribute__((swift_name("init(url:)"))) __attribute__((objc_designated_initializer)); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCKtor_httpUrl *url __attribute__((swift_name("url"))); +@end + +__attribute__((swift_name("Ktor_client_coreHttpClientPlugin"))) +@protocol KASCKtor_client_coreHttpClientPlugin +@required +- (void)installPlugin:(id)plugin scope:(KASCKtor_client_coreHttpClient *)scope __attribute__((swift_name("install(plugin:scope:)"))); +- (id)prepareBlock:(void (^)(id))block __attribute__((swift_name("prepare(block:)"))); +@property (readonly) KASCKtor_utilsAttributeKey *key __attribute__((swift_name("key"))); +@end + +__attribute__((swift_name("Ktor_eventsEventDefinition"))) +@interface KASCKtor_eventsEventDefinition : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_utilsPipelinePhase"))) +@interface KASCKtor_utilsPipelinePhase : KASCBase +- (instancetype)initWithName:(NSString *)name __attribute__((swift_name("init(name:)"))) __attribute__((objc_designated_initializer)); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) NSString *name __attribute__((swift_name("name"))); +@end + +__attribute__((swift_name("KotlinSuspendFunction2"))) +@protocol KASCKotlinSuspendFunction2 +@required + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)invokeP1:(id _Nullable)p1 p2:(id _Nullable)p2 completionHandler:(void (^)(id _Nullable_result, NSError * _Nullable))completionHandler __attribute__((swift_name("invoke(p1:p2:completionHandler:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpReceivePipeline.Phases"))) +@interface KASCKtor_client_coreHttpReceivePipelinePhases : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)phases __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_client_coreHttpReceivePipelinePhases *shared __attribute__((swift_name("shared"))); +@property (readonly) KASCKtor_utilsPipelinePhase *After __attribute__((swift_name("After"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Before __attribute__((swift_name("Before"))); +@property (readonly) KASCKtor_utilsPipelinePhase *State __attribute__((swift_name("State"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpRequestPipeline.Phases"))) +@interface KASCKtor_client_coreHttpRequestPipelinePhases : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)phases __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_client_coreHttpRequestPipelinePhases *shared __attribute__((swift_name("shared"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Before __attribute__((swift_name("Before"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Render __attribute__((swift_name("Render"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Send __attribute__((swift_name("Send"))); +@property (readonly) KASCKtor_utilsPipelinePhase *State __attribute__((swift_name("State"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Transform __attribute__((swift_name("Transform"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpResponsePipeline.Phases"))) +@interface KASCKtor_client_coreHttpResponsePipelinePhases : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)phases __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_client_coreHttpResponsePipelinePhases *shared __attribute__((swift_name("shared"))); +@property (readonly) KASCKtor_utilsPipelinePhase *After __attribute__((swift_name("After"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Parse __attribute__((swift_name("Parse"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Receive __attribute__((swift_name("Receive"))); +@property (readonly) KASCKtor_utilsPipelinePhase *State __attribute__((swift_name("State"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Transform __attribute__((swift_name("Transform"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpResponseContainer"))) +@interface KASCKtor_client_coreHttpResponseContainer : KASCBase +- (instancetype)initWithExpectedType:(KASCKtor_utilsTypeInfo *)expectedType response:(id)response __attribute__((swift_name("init(expectedType:response:)"))) __attribute__((objc_designated_initializer)); +- (KASCKtor_client_coreHttpResponseContainer *)doCopyExpectedType:(KASCKtor_utilsTypeInfo *)expectedType response:(id)response __attribute__((swift_name("doCopy(expectedType:response:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCKtor_utilsTypeInfo *expectedType __attribute__((swift_name("expectedType"))); +@property (readonly) id response __attribute__((swift_name("response"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpSendPipeline.Phases"))) +@interface KASCKtor_client_coreHttpSendPipelinePhases : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)phases __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_client_coreHttpSendPipelinePhases *shared __attribute__((swift_name("shared"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Before __attribute__((swift_name("Before"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Engine __attribute__((swift_name("Engine"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Monitoring __attribute__((swift_name("Monitoring"))); +@property (readonly) KASCKtor_utilsPipelinePhase *Receive __attribute__((swift_name("Receive"))); +@property (readonly) KASCKtor_utilsPipelinePhase *State __attribute__((swift_name("State"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_client_coreHttpClientCall.Companion"))) +@interface KASCKtor_client_coreHttpClientCallCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_client_coreHttpClientCallCompanion *shared __attribute__((swift_name("shared"))); +@property (readonly) KASCKtor_utilsAttributeKey *CustomResponse __attribute__((swift_name("CustomResponse"))) __attribute__((unavailable("This is going to be removed. Please file a ticket with clarification why and what for do you need it."))); +@end + +__attribute__((swift_name("Ktor_client_coreHttpRequest"))) +@protocol KASCKtor_client_coreHttpRequest +@required +@property (readonly) id attributes __attribute__((swift_name("attributes"))); +@property (readonly) KASCKtor_client_coreHttpClientCall *call __attribute__((swift_name("call"))); +@property (readonly) KASCKtor_httpOutgoingContent *content __attribute__((swift_name("content"))); +@property (readonly) KASCKtor_httpHttpMethod *method __attribute__((swift_name("method"))); +@property (readonly) KASCKtor_httpUrl *url __attribute__((swift_name("url"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_ioMemory"))) +@interface KASCKtor_ioMemory : KASCBase +- (instancetype)initWithPointer:(void *)pointer size:(int64_t)size __attribute__((swift_name("init(pointer:size:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKtor_ioMemoryCompanion *companion __attribute__((swift_name("companion"))); +- (void)doCopyToDestination:(KASCKtor_ioMemory *)destination offset:(int32_t)offset length:(int32_t)length destinationOffset:(int32_t)destinationOffset __attribute__((swift_name("doCopyTo(destination:offset:length:destinationOffset:)"))); +- (void)doCopyToDestination:(KASCKtor_ioMemory *)destination offset:(int64_t)offset length:(int64_t)length destinationOffset_:(int64_t)destinationOffset __attribute__((swift_name("doCopyTo(destination:offset:length:destinationOffset_:)"))); +- (int8_t)loadAtIndex:(int32_t)index __attribute__((swift_name("loadAt(index:)"))); +- (int8_t)loadAtIndex_:(int64_t)index __attribute__((swift_name("loadAt(index_:)"))); +- (KASCKtor_ioMemory *)sliceOffset:(int32_t)offset length:(int32_t)length __attribute__((swift_name("slice(offset:length:)"))); +- (KASCKtor_ioMemory *)sliceOffset:(int64_t)offset length_:(int64_t)length __attribute__((swift_name("slice(offset:length_:)"))); +- (void)storeAtIndex:(int32_t)index value:(int8_t)value __attribute__((swift_name("storeAt(index:value:)"))); +- (void)storeAtIndex:(int64_t)index value_:(int8_t)value __attribute__((swift_name("storeAt(index:value_:)"))); +@property (readonly) void *pointer __attribute__((swift_name("pointer"))); +@property (readonly) int64_t size __attribute__((swift_name("size"))); +@property (readonly) int32_t size32 __attribute__((swift_name("size32"))); +@end + +__attribute__((swift_name("Ktor_ioBuffer"))) +@interface KASCKtor_ioBuffer : KASCBase +- (instancetype)initWithMemory:(KASCKtor_ioMemory *)memory __attribute__((swift_name("init(memory:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKtor_ioBufferCompanion *companion __attribute__((swift_name("companion"))); +- (void)commitWrittenCount:(int32_t)count __attribute__((swift_name("commitWritten(count:)"))); +- (void)discardExactCount:(int32_t)count __attribute__((swift_name("discardExact(count:)"))); +- (KASCKtor_ioBuffer *)duplicate __attribute__((swift_name("duplicate()"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)duplicateToCopy:(KASCKtor_ioBuffer *)copy __attribute__((swift_name("duplicateTo(copy:)"))); +- (int8_t)readByte __attribute__((swift_name("readByte()"))); +- (void)reserveEndGapEndGap:(int32_t)endGap __attribute__((swift_name("reserveEndGap(endGap:)"))); +- (void)reserveStartGapStartGap:(int32_t)startGap __attribute__((swift_name("reserveStartGap(startGap:)"))); +- (void)reset __attribute__((swift_name("reset()"))); +- (void)resetForRead __attribute__((swift_name("resetForRead()"))); +- (void)resetForWrite __attribute__((swift_name("resetForWrite()"))); +- (void)resetForWriteLimit:(int32_t)limit __attribute__((swift_name("resetForWrite(limit:)"))); +- (void)rewindCount:(int32_t)count __attribute__((swift_name("rewind(count:)"))); +- (NSString *)description __attribute__((swift_name("description()"))); +- (int32_t)tryPeekByte __attribute__((swift_name("tryPeekByte()"))); +- (int32_t)tryReadByte __attribute__((swift_name("tryReadByte()"))); +- (void)writeByteValue:(int8_t)value __attribute__((swift_name("writeByte(value:)"))); +@property (readonly) int32_t capacity __attribute__((swift_name("capacity"))); +@property (readonly) int32_t endGap __attribute__((swift_name("endGap"))); +@property (readonly) int32_t limit __attribute__((swift_name("limit"))); +@property (readonly) KASCKtor_ioMemory *memory __attribute__((swift_name("memory"))); +@property (readonly) int32_t readPosition __attribute__((swift_name("readPosition"))); +@property (readonly) int32_t readRemaining __attribute__((swift_name("readRemaining"))); +@property (readonly) int32_t startGap __attribute__((swift_name("startGap"))); +@property (readonly) int32_t writePosition __attribute__((swift_name("writePosition"))); +@property (readonly) int32_t writeRemaining __attribute__((swift_name("writeRemaining"))); +@end + +__attribute__((swift_name("Ktor_ioChunkBuffer"))) +@interface KASCKtor_ioChunkBuffer : KASCKtor_ioBuffer +- (instancetype)initWithMemory:(KASCKtor_ioMemory *)memory origin:(KASCKtor_ioChunkBuffer * _Nullable)origin parentPool:(id _Nullable)parentPool __attribute__((swift_name("init(memory:origin:parentPool:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithMemory:(KASCKtor_ioMemory *)memory __attribute__((swift_name("init(memory:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCKtor_ioChunkBufferCompanion *companion __attribute__((swift_name("companion"))); +- (KASCKtor_ioChunkBuffer * _Nullable)cleanNext __attribute__((swift_name("cleanNext()"))); +- (KASCKtor_ioChunkBuffer *)duplicate __attribute__((swift_name("duplicate()"))); +- (void)releasePool:(id)pool __attribute__((swift_name("release(pool:)"))); +- (void)reset __attribute__((swift_name("reset()"))); +@property (getter=next_) KASCKtor_ioChunkBuffer * _Nullable next __attribute__((swift_name("next"))); +@property (readonly) KASCKtor_ioChunkBuffer * _Nullable origin __attribute__((swift_name("origin"))); +@property (readonly) int32_t referenceCount __attribute__((swift_name("referenceCount"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("KotlinByteArray"))) +@interface KASCKotlinByteArray : KASCBase ++ (instancetype)arrayWithSize:(int32_t)size __attribute__((swift_name("init(size:)"))); ++ (instancetype)arrayWithSize:(int32_t)size init:(KASCByte *(^)(KASCInt *))init __attribute__((swift_name("init(size:init:)"))); ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); +- (int8_t)getIndex:(int32_t)index __attribute__((swift_name("get(index:)"))); +- (KASCKotlinByteIterator *)iterator __attribute__((swift_name("iterator()"))); +- (void)setIndex:(int32_t)index value:(int8_t)value __attribute__((swift_name("set(index:value:)"))); +@property (readonly) int32_t size __attribute__((swift_name("size"))); +@end + +__attribute__((swift_name("Ktor_ioInput"))) +@interface KASCKtor_ioInput : KASCBase +- (instancetype)initWithHead:(KASCKtor_ioChunkBuffer *)head remaining:(int64_t)remaining pool:(id)pool __attribute__((swift_name("init(head:remaining:pool:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKtor_ioInputCompanion *companion __attribute__((swift_name("companion"))); +- (BOOL)canRead __attribute__((swift_name("canRead()"))); +- (void)close __attribute__((swift_name("close()"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)closeSource __attribute__((swift_name("closeSource()"))); +- (int32_t)discardN:(int32_t)n __attribute__((swift_name("discard(n:)"))); +- (int64_t)discardN_:(int64_t)n __attribute__((swift_name("discard(n_:)"))); +- (void)discardExactN:(int32_t)n __attribute__((swift_name("discardExact(n:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (KASCKtor_ioChunkBuffer * _Nullable)fill __attribute__((swift_name("fill()"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (int32_t)fillDestination:(KASCKtor_ioMemory *)destination offset:(int32_t)offset length:(int32_t)length __attribute__((swift_name("fill(destination:offset:length:)"))); +- (BOOL)hasBytesN:(int32_t)n __attribute__((swift_name("hasBytes(n:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)markNoMoreChunksAvailable __attribute__((swift_name("markNoMoreChunksAvailable()"))); +- (int64_t)peekToDestination:(KASCKtor_ioMemory *)destination destinationOffset:(int64_t)destinationOffset offset:(int64_t)offset min:(int64_t)min max:(int64_t)max __attribute__((swift_name("peekTo(destination:destinationOffset:offset:min:max:)"))); +- (int32_t)peekToBuffer:(KASCKtor_ioChunkBuffer *)buffer __attribute__((swift_name("peekTo(buffer:)"))); +- (int8_t)readByte __attribute__((swift_name("readByte()"))); +- (NSString *)readTextMin:(int32_t)min max:(int32_t)max __attribute__((swift_name("readText(min:max:)"))); +- (int32_t)readTextOut:(id)out min:(int32_t)min max:(int32_t)max __attribute__((swift_name("readText(out:min:max:)"))); +- (NSString *)readTextExactExactCharacters:(int32_t)exactCharacters __attribute__((swift_name("readTextExact(exactCharacters:)"))); +- (void)readTextExactOut:(id)out exactCharacters:(int32_t)exactCharacters __attribute__((swift_name("readTextExact(out:exactCharacters:)"))); +- (void)release_ __attribute__((swift_name("release()"))); +- (int32_t)tryPeek __attribute__((swift_name("tryPeek()"))); +@property (readonly) BOOL endOfInput __attribute__((swift_name("endOfInput"))); +@property (readonly) id pool __attribute__((swift_name("pool"))); +@property (readonly) int64_t remaining __attribute__((swift_name("remaining"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_ioByteReadPacket"))) +@interface KASCKtor_ioByteReadPacket : KASCKtor_ioInput +- (instancetype)initWithHead:(KASCKtor_ioChunkBuffer *)head pool:(id)pool __attribute__((swift_name("init(head:pool:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithHead:(KASCKtor_ioChunkBuffer *)head remaining:(int64_t)remaining pool:(id)pool __attribute__((swift_name("init(head:remaining:pool:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCKtor_ioByteReadPacketCompanion *companion __attribute__((swift_name("companion"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)closeSource __attribute__((swift_name("closeSource()"))); +- (KASCKtor_ioByteReadPacket *)doCopy __attribute__((swift_name("doCopy()"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (KASCKtor_ioChunkBuffer * _Nullable)fill __attribute__((swift_name("fill()"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (int32_t)fillDestination:(KASCKtor_ioMemory *)destination offset:(int32_t)offset length:(int32_t)length __attribute__((swift_name("fill(destination:offset:length:)"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@end + +__attribute__((swift_name("Ktor_ioReadSession"))) +@protocol KASCKtor_ioReadSession +@required +- (int32_t)discardN:(int32_t)n __attribute__((swift_name("discard(n:)"))); +- (KASCKtor_ioChunkBuffer * _Nullable)requestAtLeast:(int32_t)atLeast __attribute__((swift_name("request(atLeast:)"))); +@property (readonly) int32_t availableForRead __attribute__((swift_name("availableForRead"))); +@end + +__attribute__((swift_name("KotlinSuspendFunction1"))) +@protocol KASCKotlinSuspendFunction1 +@required + +/** + * @note This method converts instances of CancellationException to errors. + * Other uncaught Kotlin exceptions are fatal. +*/ +- (void)invokeP1:(id _Nullable)p1 completionHandler:(void (^)(id _Nullable_result, NSError * _Nullable))completionHandler __attribute__((swift_name("invoke(p1:completionHandler:)"))); +@end + +__attribute__((swift_name("KotlinAppendable"))) +@protocol KASCKotlinAppendable +@required +- (id)appendValue:(unichar)value __attribute__((swift_name("append(value:)"))); +- (id)appendValue_:(id _Nullable)value __attribute__((swift_name("append(value_:)"))); +- (id)appendValue:(id _Nullable)value startIndex:(int32_t)startIndex endIndex:(int32_t)endIndex __attribute__((swift_name("append(value:startIndex:endIndex:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_utilsGMTDate.Companion"))) +@interface KASCKtor_utilsGMTDateCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_utilsGMTDateCompanion *shared __attribute__((swift_name("shared"))); +@property (readonly) KASCKtor_utilsGMTDate *START __attribute__((swift_name("START"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_utilsWeekDay"))) +@interface KASCKtor_utilsWeekDay : KASCKotlinEnum ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); +- (instancetype)initWithName:(NSString *)name ordinal:(int32_t)ordinal __attribute__((swift_name("init(name:ordinal:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCKtor_utilsWeekDayCompanion *companion __attribute__((swift_name("companion"))); +@property (class, readonly) KASCKtor_utilsWeekDay *monday __attribute__((swift_name("monday"))); +@property (class, readonly) KASCKtor_utilsWeekDay *tuesday __attribute__((swift_name("tuesday"))); +@property (class, readonly) KASCKtor_utilsWeekDay *wednesday __attribute__((swift_name("wednesday"))); +@property (class, readonly) KASCKtor_utilsWeekDay *thursday __attribute__((swift_name("thursday"))); +@property (class, readonly) KASCKtor_utilsWeekDay *friday __attribute__((swift_name("friday"))); +@property (class, readonly) KASCKtor_utilsWeekDay *saturday __attribute__((swift_name("saturday"))); +@property (class, readonly) KASCKtor_utilsWeekDay *sunday __attribute__((swift_name("sunday"))); ++ (KASCKotlinArray *)values __attribute__((swift_name("values()"))); +@property (readonly) NSString *value __attribute__((swift_name("value"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_utilsMonth"))) +@interface KASCKtor_utilsMonth : KASCKotlinEnum ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); +- (instancetype)initWithName:(NSString *)name ordinal:(int32_t)ordinal __attribute__((swift_name("init(name:ordinal:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCKtor_utilsMonthCompanion *companion __attribute__((swift_name("companion"))); +@property (class, readonly) KASCKtor_utilsMonth *january __attribute__((swift_name("january"))); +@property (class, readonly) KASCKtor_utilsMonth *february __attribute__((swift_name("february"))); +@property (class, readonly) KASCKtor_utilsMonth *march __attribute__((swift_name("march"))); +@property (class, readonly) KASCKtor_utilsMonth *april __attribute__((swift_name("april"))); +@property (class, readonly) KASCKtor_utilsMonth *may __attribute__((swift_name("may"))); +@property (class, readonly) KASCKtor_utilsMonth *june __attribute__((swift_name("june"))); +@property (class, readonly) KASCKtor_utilsMonth *july __attribute__((swift_name("july"))); +@property (class, readonly) KASCKtor_utilsMonth *august __attribute__((swift_name("august"))); +@property (class, readonly) KASCKtor_utilsMonth *september __attribute__((swift_name("september"))); +@property (class, readonly) KASCKtor_utilsMonth *october __attribute__((swift_name("october"))); +@property (class, readonly) KASCKtor_utilsMonth *november __attribute__((swift_name("november"))); +@property (class, readonly) KASCKtor_utilsMonth *december __attribute__((swift_name("december"))); ++ (KASCKotlinArray *)values __attribute__((swift_name("values()"))); +@property (readonly) NSString *value __attribute__((swift_name("value"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpHttpStatusCode.Companion"))) +@interface KASCKtor_httpHttpStatusCodeCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_httpHttpStatusCodeCompanion *shared __attribute__((swift_name("shared"))); +- (KASCKtor_httpHttpStatusCode *)fromValueValue:(int32_t)value __attribute__((swift_name("fromValue(value:)"))); +@property (readonly) KASCKtor_httpHttpStatusCode *Accepted __attribute__((swift_name("Accepted"))); +@property (readonly) KASCKtor_httpHttpStatusCode *BadGateway __attribute__((swift_name("BadGateway"))); +@property (readonly) KASCKtor_httpHttpStatusCode *BadRequest __attribute__((swift_name("BadRequest"))); +@property (readonly) KASCKtor_httpHttpStatusCode *Conflict __attribute__((swift_name("Conflict"))); +@property (readonly) KASCKtor_httpHttpStatusCode *Continue __attribute__((swift_name("Continue"))); +@property (readonly) KASCKtor_httpHttpStatusCode *Created __attribute__((swift_name("Created"))); +@property (readonly) KASCKtor_httpHttpStatusCode *ExpectationFailed __attribute__((swift_name("ExpectationFailed"))); +@property (readonly) KASCKtor_httpHttpStatusCode *FailedDependency __attribute__((swift_name("FailedDependency"))); +@property (readonly) KASCKtor_httpHttpStatusCode *Forbidden __attribute__((swift_name("Forbidden"))); +@property (readonly) KASCKtor_httpHttpStatusCode *Found __attribute__((swift_name("Found"))); +@property (readonly) KASCKtor_httpHttpStatusCode *GatewayTimeout __attribute__((swift_name("GatewayTimeout"))); +@property (readonly) KASCKtor_httpHttpStatusCode *Gone __attribute__((swift_name("Gone"))); +@property (readonly) KASCKtor_httpHttpStatusCode *InsufficientStorage __attribute__((swift_name("InsufficientStorage"))); +@property (readonly) KASCKtor_httpHttpStatusCode *InternalServerError __attribute__((swift_name("InternalServerError"))); +@property (readonly) KASCKtor_httpHttpStatusCode *LengthRequired __attribute__((swift_name("LengthRequired"))); +@property (readonly) KASCKtor_httpHttpStatusCode *Locked __attribute__((swift_name("Locked"))); +@property (readonly) KASCKtor_httpHttpStatusCode *MethodNotAllowed __attribute__((swift_name("MethodNotAllowed"))); +@property (readonly) KASCKtor_httpHttpStatusCode *MovedPermanently __attribute__((swift_name("MovedPermanently"))); +@property (readonly) KASCKtor_httpHttpStatusCode *MultiStatus __attribute__((swift_name("MultiStatus"))); +@property (readonly) KASCKtor_httpHttpStatusCode *MultipleChoices __attribute__((swift_name("MultipleChoices"))); +@property (readonly) KASCKtor_httpHttpStatusCode *NoContent __attribute__((swift_name("NoContent"))); +@property (readonly) KASCKtor_httpHttpStatusCode *NonAuthoritativeInformation __attribute__((swift_name("NonAuthoritativeInformation"))); +@property (readonly) KASCKtor_httpHttpStatusCode *NotAcceptable __attribute__((swift_name("NotAcceptable"))); +@property (readonly) KASCKtor_httpHttpStatusCode *NotFound __attribute__((swift_name("NotFound"))); +@property (readonly) KASCKtor_httpHttpStatusCode *NotImplemented __attribute__((swift_name("NotImplemented"))); +@property (readonly) KASCKtor_httpHttpStatusCode *NotModified __attribute__((swift_name("NotModified"))); +@property (readonly) KASCKtor_httpHttpStatusCode *OK __attribute__((swift_name("OK"))); +@property (readonly) KASCKtor_httpHttpStatusCode *PartialContent __attribute__((swift_name("PartialContent"))); +@property (readonly) KASCKtor_httpHttpStatusCode *PayloadTooLarge __attribute__((swift_name("PayloadTooLarge"))); +@property (readonly) KASCKtor_httpHttpStatusCode *PaymentRequired __attribute__((swift_name("PaymentRequired"))); +@property (readonly) KASCKtor_httpHttpStatusCode *PermanentRedirect __attribute__((swift_name("PermanentRedirect"))); +@property (readonly) KASCKtor_httpHttpStatusCode *PreconditionFailed __attribute__((swift_name("PreconditionFailed"))); +@property (readonly) KASCKtor_httpHttpStatusCode *Processing __attribute__((swift_name("Processing"))); +@property (readonly) KASCKtor_httpHttpStatusCode *ProxyAuthenticationRequired __attribute__((swift_name("ProxyAuthenticationRequired"))); +@property (readonly) KASCKtor_httpHttpStatusCode *RequestHeaderFieldTooLarge __attribute__((swift_name("RequestHeaderFieldTooLarge"))); +@property (readonly) KASCKtor_httpHttpStatusCode *RequestTimeout __attribute__((swift_name("RequestTimeout"))); +@property (readonly) KASCKtor_httpHttpStatusCode *RequestURITooLong __attribute__((swift_name("RequestURITooLong"))); +@property (readonly) KASCKtor_httpHttpStatusCode *RequestedRangeNotSatisfiable __attribute__((swift_name("RequestedRangeNotSatisfiable"))); +@property (readonly) KASCKtor_httpHttpStatusCode *ResetContent __attribute__((swift_name("ResetContent"))); +@property (readonly) KASCKtor_httpHttpStatusCode *SeeOther __attribute__((swift_name("SeeOther"))); +@property (readonly) KASCKtor_httpHttpStatusCode *ServiceUnavailable __attribute__((swift_name("ServiceUnavailable"))); +@property (readonly) KASCKtor_httpHttpStatusCode *SwitchProxy __attribute__((swift_name("SwitchProxy"))); +@property (readonly) KASCKtor_httpHttpStatusCode *SwitchingProtocols __attribute__((swift_name("SwitchingProtocols"))); +@property (readonly) KASCKtor_httpHttpStatusCode *TemporaryRedirect __attribute__((swift_name("TemporaryRedirect"))); +@property (readonly) KASCKtor_httpHttpStatusCode *TooManyRequests __attribute__((swift_name("TooManyRequests"))); +@property (readonly) KASCKtor_httpHttpStatusCode *Unauthorized __attribute__((swift_name("Unauthorized"))); +@property (readonly) KASCKtor_httpHttpStatusCode *UnprocessableEntity __attribute__((swift_name("UnprocessableEntity"))); +@property (readonly) KASCKtor_httpHttpStatusCode *UnsupportedMediaType __attribute__((swift_name("UnsupportedMediaType"))); +@property (readonly) KASCKtor_httpHttpStatusCode *UpgradeRequired __attribute__((swift_name("UpgradeRequired"))); +@property (readonly) KASCKtor_httpHttpStatusCode *UseProxy __attribute__((swift_name("UseProxy"))); +@property (readonly) KASCKtor_httpHttpStatusCode *VariantAlsoNegotiates __attribute__((swift_name("VariantAlsoNegotiates"))); +@property (readonly) KASCKtor_httpHttpStatusCode *VersionNotSupported __attribute__((swift_name("VersionNotSupported"))); +@property (readonly) NSArray *allStatusCodes __attribute__((swift_name("allStatusCodes"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpHttpProtocolVersion.Companion"))) +@interface KASCKtor_httpHttpProtocolVersionCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_httpHttpProtocolVersionCompanion *shared __attribute__((swift_name("shared"))); +- (KASCKtor_httpHttpProtocolVersion *)fromValueName:(NSString *)name major:(int32_t)major minor:(int32_t)minor __attribute__((swift_name("fromValue(name:major:minor:)"))); +- (KASCKtor_httpHttpProtocolVersion *)parseValue:(id)value __attribute__((swift_name("parse(value:)"))); +@property (readonly) KASCKtor_httpHttpProtocolVersion *HTTP_1_0 __attribute__((swift_name("HTTP_1_0"))); +@property (readonly) KASCKtor_httpHttpProtocolVersion *HTTP_1_1 __attribute__((swift_name("HTTP_1_1"))); +@property (readonly) KASCKtor_httpHttpProtocolVersion *HTTP_2_0 __attribute__((swift_name("HTTP_2_0"))); +@property (readonly) KASCKtor_httpHttpProtocolVersion *QUIC __attribute__((swift_name("QUIC"))); +@property (readonly) KASCKtor_httpHttpProtocolVersion *SPDY_3 __attribute__((swift_name("SPDY_3"))); +@end + + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +__attribute__((swift_name("Kotlinx_serialization_coreSerializersModuleCollector"))) +@protocol KASCKotlinx_serialization_coreSerializersModuleCollector +@required +- (void)contextualKClass:(id)kClass provider:(id (^)(NSArray> *))provider __attribute__((swift_name("contextual(kClass:provider:)"))); +- (void)contextualKClass:(id)kClass serializer:(id)serializer __attribute__((swift_name("contextual(kClass:serializer:)"))); +- (void)polymorphicBaseClass:(id)baseClass actualClass:(id)actualClass actualSerializer:(id)actualSerializer __attribute__((swift_name("polymorphic(baseClass:actualClass:actualSerializer:)"))); +- (void)polymorphicDefaultBaseClass:(id)baseClass defaultDeserializerProvider:(id _Nullable (^)(NSString * _Nullable))defaultDeserializerProvider __attribute__((swift_name("polymorphicDefault(baseClass:defaultDeserializerProvider:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (void)polymorphicDefaultDeserializerBaseClass:(id)baseClass defaultDeserializerProvider:(id _Nullable (^)(NSString * _Nullable))defaultDeserializerProvider __attribute__((swift_name("polymorphicDefaultDeserializer(baseClass:defaultDeserializerProvider:)"))); + +/** + * @note annotations + * kotlinx.serialization.ExperimentalSerializationApi +*/ +- (void)polymorphicDefaultSerializerBaseClass:(id)baseClass defaultSerializerProvider:(id _Nullable (^)(id))defaultSerializerProvider __attribute__((swift_name("polymorphicDefaultSerializer(baseClass:defaultSerializerProvider:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpUrl.Companion"))) +@interface KASCKtor_httpUrlCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_httpUrlCompanion *shared __attribute__((swift_name("shared"))); +@end + +__attribute__((swift_name("Ktor_httpHeaderValueWithParameters"))) +@interface KASCKtor_httpHeaderValueWithParameters : KASCBase +- (instancetype)initWithContent:(NSString *)content parameters:(NSArray *)parameters __attribute__((swift_name("init(content:parameters:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKtor_httpHeaderValueWithParametersCompanion *companion __attribute__((swift_name("companion"))); +- (NSString * _Nullable)parameterName:(NSString *)name __attribute__((swift_name("parameter(name:)"))); +- (NSString *)description __attribute__((swift_name("description()"))); + +/** + * @note This property has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +@property (readonly) NSString *content __attribute__((swift_name("content"))); +@property (readonly) NSArray *parameters __attribute__((swift_name("parameters"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpContentType"))) +@interface KASCKtor_httpContentType : KASCKtor_httpHeaderValueWithParameters +- (instancetype)initWithContentType:(NSString *)contentType contentSubtype:(NSString *)contentSubtype parameters:(NSArray *)parameters __attribute__((swift_name("init(contentType:contentSubtype:parameters:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithContent:(NSString *)content parameters:(NSArray *)parameters __attribute__((swift_name("init(content:parameters:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly, getter=companion) KASCKtor_httpContentTypeCompanion *companion __attribute__((swift_name("companion"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (BOOL)matchPattern:(KASCKtor_httpContentType *)pattern __attribute__((swift_name("match(pattern:)"))); +- (BOOL)matchPattern_:(NSString *)pattern __attribute__((swift_name("match(pattern_:)"))); +- (KASCKtor_httpContentType *)withParameterName:(NSString *)name value:(NSString *)value __attribute__((swift_name("withParameter(name:value:)"))); +- (KASCKtor_httpContentType *)withoutParameters __attribute__((swift_name("withoutParameters()"))); +@property (readonly) NSString *contentSubtype __attribute__((swift_name("contentSubtype"))); +@property (readonly) NSString *contentType __attribute__((swift_name("contentType"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpURLProtocol.Companion"))) +@interface KASCKtor_httpURLProtocolCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_httpURLProtocolCompanion *shared __attribute__((swift_name("shared"))); +- (KASCKtor_httpURLProtocol *)createOrDefaultName:(NSString *)name __attribute__((swift_name("createOrDefault(name:)"))); +@property (readonly) KASCKtor_httpURLProtocol *HTTP __attribute__((swift_name("HTTP"))); +@property (readonly) KASCKtor_httpURLProtocol *HTTPS __attribute__((swift_name("HTTPS"))); +@property (readonly) KASCKtor_httpURLProtocol *SOCKS __attribute__((swift_name("SOCKS"))); +@property (readonly) KASCKtor_httpURLProtocol *WS __attribute__((swift_name("WS"))); +@property (readonly) KASCKtor_httpURLProtocol *WSS __attribute__((swift_name("WSS"))); +@property (readonly) NSDictionary *byName __attribute__((swift_name("byName"))); +@end + + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.1") +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("KotlinKTypeProjection"))) +@interface KASCKotlinKTypeProjection : KASCBase +- (instancetype)initWithVariance:(KASCKotlinKVariance * _Nullable)variance type:(id _Nullable)type __attribute__((swift_name("init(variance:type:)"))) __attribute__((objc_designated_initializer)); +@property (class, readonly, getter=companion) KASCKotlinKTypeProjectionCompanion *companion __attribute__((swift_name("companion"))); +- (KASCKotlinKTypeProjection *)doCopyVariance:(KASCKotlinKVariance * _Nullable)variance type:(id _Nullable)type __attribute__((swift_name("doCopy(variance:type:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) id _Nullable type __attribute__((swift_name("type"))); +@property (readonly) KASCKotlinKVariance * _Nullable variance __attribute__((swift_name("variance"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreParentJob"))) +@protocol KASCKotlinx_coroutines_coreParentJob +@required +- (KASCKotlinCancellationException *)getChildJobCancellationCause __attribute__((swift_name("getChildJobCancellationCause()"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreSelectInstance"))) +@protocol KASCKotlinx_coroutines_coreSelectInstance +@required +- (void)disposeOnSelectHandle:(id)handle __attribute__((swift_name("disposeOnSelect(handle:)"))); +- (id _Nullable)performAtomicTrySelectDesc:(KASCKotlinx_coroutines_coreAtomicDesc *)desc __attribute__((swift_name("performAtomicTrySelect(desc:)"))); +- (void)resumeSelectWithExceptionException:(KASCKotlinThrowable *)exception __attribute__((swift_name("resumeSelectWithException(exception:)"))); +- (BOOL)trySelect __attribute__((swift_name("trySelect()"))); +- (id _Nullable)trySelectOtherOtherOp:(KASCKotlinx_coroutines_coreLockFreeLinkedListNodePrepareOp * _Nullable)otherOp __attribute__((swift_name("trySelectOther(otherOp:)"))); +@property (readonly) id completion __attribute__((swift_name("completion"))); +@property (readonly) BOOL isSelected __attribute__((swift_name("isSelected"))); +@end + + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.3") +*/ +__attribute__((swift_name("KotlinContinuation"))) +@protocol KASCKotlinContinuation +@required +- (void)resumeWithResult:(id _Nullable)result __attribute__((swift_name("resumeWith(result:)"))); +@property (readonly) id context __attribute__((swift_name("context"))); +@end + + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.3") + * kotlin.ExperimentalStdlibApi +*/ +__attribute__((swift_name("KotlinAbstractCoroutineContextKey"))) +@interface KASCKotlinAbstractCoroutineContextKey : KASCBase +- (instancetype)initWithBaseKey:(id)baseKey safeCast:(E _Nullable (^)(id))safeCast __attribute__((swift_name("init(baseKey:safeCast:)"))) __attribute__((objc_designated_initializer)); +@end + + +/** + * @note annotations + * kotlin.ExperimentalStdlibApi +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Kotlinx_coroutines_coreCoroutineDispatcher.Key"))) +@interface KASCKotlinx_coroutines_coreCoroutineDispatcherKey : KASCKotlinAbstractCoroutineContextKey, KASCKotlinx_coroutines_coreCoroutineDispatcher *> ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); +- (instancetype)initWithBaseKey:(id)baseKey safeCast:(id _Nullable (^)(id))safeCast __attribute__((swift_name("init(baseKey:safeCast:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)key __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKotlinx_coroutines_coreCoroutineDispatcherKey *shared __attribute__((swift_name("shared"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreRunnable"))) +@protocol KASCKotlinx_coroutines_coreRunnable +@required +- (void)run __attribute__((swift_name("run()"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_ioMemory.Companion"))) +@interface KASCKtor_ioMemoryCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_ioMemoryCompanion *shared __attribute__((swift_name("shared"))); +@property (readonly) KASCKtor_ioMemory *Empty __attribute__((swift_name("Empty"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_ioBuffer.Companion"))) +@interface KASCKtor_ioBufferCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_ioBufferCompanion *shared __attribute__((swift_name("shared"))); +@property (readonly) KASCKtor_ioBuffer *Empty __attribute__((swift_name("Empty"))); +@property (readonly) int32_t ReservedSize __attribute__((swift_name("ReservedSize"))); +@end + +__attribute__((swift_name("Ktor_ioObjectPool"))) +@protocol KASCKtor_ioObjectPool +@required +- (id)borrow __attribute__((swift_name("borrow()"))); +- (void)dispose __attribute__((swift_name("dispose()"))); +- (void)recycleInstance:(id)instance __attribute__((swift_name("recycle(instance:)"))); +@property (readonly) int32_t capacity __attribute__((swift_name("capacity"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_ioChunkBuffer.Companion"))) +@interface KASCKtor_ioChunkBufferCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_ioChunkBufferCompanion *shared __attribute__((swift_name("shared"))); +@property (readonly) KASCKtor_ioChunkBuffer *Empty __attribute__((swift_name("Empty"))); +@property (readonly) id EmptyPool __attribute__((swift_name("EmptyPool"))); +@property (readonly) id Pool __attribute__((swift_name("Pool"))); +@end + +__attribute__((swift_name("KotlinByteIterator"))) +@interface KASCKotlinByteIterator : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (KASCByte *)next __attribute__((swift_name("next()"))); +- (int8_t)nextByte __attribute__((swift_name("nextByte()"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_ioInput.Companion"))) +@interface KASCKtor_ioInputCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_ioInputCompanion *shared __attribute__((swift_name("shared"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_ioByteReadPacket.Companion"))) +@interface KASCKtor_ioByteReadPacketCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_ioByteReadPacketCompanion *shared __attribute__((swift_name("shared"))); +@property (readonly) KASCKtor_ioByteReadPacket *Empty __attribute__((swift_name("Empty"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_utilsWeekDay.Companion"))) +@interface KASCKtor_utilsWeekDayCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_utilsWeekDayCompanion *shared __attribute__((swift_name("shared"))); +- (KASCKtor_utilsWeekDay *)fromOrdinal:(int32_t)ordinal __attribute__((swift_name("from(ordinal:)"))); +- (KASCKtor_utilsWeekDay *)fromValue:(NSString *)value __attribute__((swift_name("from(value:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_utilsMonth.Companion"))) +@interface KASCKtor_utilsMonthCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_utilsMonthCompanion *shared __attribute__((swift_name("shared"))); +- (KASCKtor_utilsMonth *)fromOrdinal:(int32_t)ordinal __attribute__((swift_name("from(ordinal:)"))); +- (KASCKtor_utilsMonth *)fromValue:(NSString *)value __attribute__((swift_name("from(value:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpHeaderValueParam"))) +@interface KASCKtor_httpHeaderValueParam : KASCBase +- (instancetype)initWithName:(NSString *)name value:(NSString *)value __attribute__((swift_name("init(name:value:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)initWithName:(NSString *)name value:(NSString *)value escapeValue:(BOOL)escapeValue __attribute__((swift_name("init(name:value:escapeValue:)"))) __attribute__((objc_designated_initializer)); +- (KASCKtor_httpHeaderValueParam *)doCopyName:(NSString *)name value:(NSString *)value escapeValue:(BOOL)escapeValue __attribute__((swift_name("doCopy(name:value:escapeValue:)"))); +- (BOOL)isEqual:(id _Nullable)other __attribute__((swift_name("isEqual(_:)"))); +- (NSUInteger)hash __attribute__((swift_name("hash()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) BOOL escapeValue __attribute__((swift_name("escapeValue"))); +@property (readonly) NSString *name __attribute__((swift_name("name"))); +@property (readonly) NSString *value __attribute__((swift_name("value"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpHeaderValueWithParameters.Companion"))) +@interface KASCKtor_httpHeaderValueWithParametersCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_httpHeaderValueWithParametersCompanion *shared __attribute__((swift_name("shared"))); +- (id _Nullable)parseValue:(NSString *)value init:(id _Nullable (^)(NSString *, NSArray *))init __attribute__((swift_name("parse(value:init:)"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Ktor_httpContentType.Companion"))) +@interface KASCKtor_httpContentTypeCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKtor_httpContentTypeCompanion *shared __attribute__((swift_name("shared"))); +- (KASCKtor_httpContentType *)parseValue:(NSString *)value __attribute__((swift_name("parse(value:)"))); +@property (readonly) KASCKtor_httpContentType *Any __attribute__((swift_name("Any"))); +@end + + +/** + * @note annotations + * kotlin.SinceKotlin(version="1.1") +*/ +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("KotlinKVariance"))) +@interface KASCKotlinKVariance : KASCKotlinEnum ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); +- (instancetype)initWithName:(NSString *)name ordinal:(int32_t)ordinal __attribute__((swift_name("init(name:ordinal:)"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); +@property (class, readonly) KASCKotlinKVariance *invariant __attribute__((swift_name("invariant"))); +@property (class, readonly) KASCKotlinKVariance *in __attribute__((swift_name("in"))); +@property (class, readonly) KASCKotlinKVariance *out __attribute__((swift_name("out"))); ++ (KASCKotlinArray *)values __attribute__((swift_name("values()"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("KotlinKTypeProjection.Companion"))) +@interface KASCKotlinKTypeProjectionCompanion : KASCBase ++ (instancetype)alloc __attribute__((unavailable)); ++ (instancetype)allocWithZone:(struct _NSZone *)zone __attribute__((unavailable)); ++ (instancetype)companion __attribute__((swift_name("init()"))); +@property (class, readonly, getter=shared) KASCKotlinKTypeProjectionCompanion *shared __attribute__((swift_name("shared"))); + +/** + * @note annotations + * kotlin.jvm.JvmStatic +*/ +- (KASCKotlinKTypeProjection *)contravariantType:(id)type __attribute__((swift_name("contravariant(type:)"))); + +/** + * @note annotations + * kotlin.jvm.JvmStatic +*/ +- (KASCKotlinKTypeProjection *)covariantType:(id)type __attribute__((swift_name("covariant(type:)"))); + +/** + * @note annotations + * kotlin.jvm.JvmStatic +*/ +- (KASCKotlinKTypeProjection *)invariantType:(id)type __attribute__((swift_name("invariant(type:)"))); +@property (readonly) KASCKotlinKTypeProjection *STAR __attribute__((swift_name("STAR"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreAtomicDesc"))) +@interface KASCKotlinx_coroutines_coreAtomicDesc : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (void)completeOp:(KASCKotlinx_coroutines_coreAtomicOp *)op failure:(id _Nullable)failure __attribute__((swift_name("complete(op:failure:)"))); +- (id _Nullable)prepareOp:(KASCKotlinx_coroutines_coreAtomicOp *)op __attribute__((swift_name("prepare(op:)"))); +@property KASCKotlinx_coroutines_coreAtomicOp *atomicOp __attribute__((swift_name("atomicOp"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreOpDescriptor"))) +@interface KASCKotlinx_coroutines_coreOpDescriptor : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (BOOL)isEarlierThanThat:(KASCKotlinx_coroutines_coreOpDescriptor *)that __attribute__((swift_name("isEarlierThan(that:)"))); +- (id _Nullable)performAffected:(id _Nullable)affected __attribute__((swift_name("perform(affected:)"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCKotlinx_coroutines_coreAtomicOp * _Nullable atomicOp __attribute__((swift_name("atomicOp"))); +@end + +__attribute__((objc_subclassing_restricted)) +__attribute__((swift_name("Kotlinx_coroutines_coreLockFreeLinkedListNode.PrepareOp"))) +@interface KASCKotlinx_coroutines_coreLockFreeLinkedListNodePrepareOp : KASCKotlinx_coroutines_coreOpDescriptor +- (instancetype)initWithAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected next:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)next desc:(KASCKotlinx_coroutines_coreLockFreeLinkedListNodeAbstractAtomicDesc *)desc __attribute__((swift_name("init(affected:next:desc:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); +- (void)finishPrepare __attribute__((swift_name("finishPrepare()"))); +- (id _Nullable)performAffected:(id _Nullable)affected __attribute__((swift_name("perform(affected:)"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode *affected __attribute__((swift_name("affected"))); +@property (readonly) KASCKotlinx_coroutines_coreAtomicOp *atomicOp __attribute__((swift_name("atomicOp"))); +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNodeAbstractAtomicDesc *desc __attribute__((swift_name("desc"))); +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode *next __attribute__((swift_name("next"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreAtomicOp"))) +@interface KASCKotlinx_coroutines_coreAtomicOp<__contravariant T> : KASCKotlinx_coroutines_coreOpDescriptor +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (void)completeAffected:(T _Nullable)affected failure:(id _Nullable)failure __attribute__((swift_name("complete(affected:failure:)"))); +- (id _Nullable)decideDecision:(id _Nullable)decision __attribute__((swift_name("decide(decision:)"))); +- (id _Nullable)performAffected:(id _Nullable)affected __attribute__((swift_name("perform(affected:)"))); +- (id _Nullable)prepareAffected:(T _Nullable)affected __attribute__((swift_name("prepare(affected:)"))); +@property (readonly) KASCKotlinx_coroutines_coreAtomicOp *atomicOp __attribute__((swift_name("atomicOp"))); +@property (readonly) id _Nullable consensus __attribute__((swift_name("consensus"))); +@property (readonly) BOOL isDecided __attribute__((swift_name("isDecided"))); +@property (readonly) int64_t opSequence __attribute__((swift_name("opSequence"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreLockFreeLinkedListNode"))) +@interface KASCKotlinx_coroutines_coreLockFreeLinkedListNode : KASCBase +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (void)addLastNode:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)node __attribute__((swift_name("addLast(node:)"))); +- (BOOL)addLastIfNode:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)node condition:(KASCBoolean *(^)(void))condition __attribute__((swift_name("addLastIf(node:condition:)"))); +- (BOOL)addLastIfPrevNode:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)node predicate:(KASCBoolean *(^)(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *))predicate __attribute__((swift_name("addLastIfPrev(node:predicate:)"))); +- (BOOL)addLastIfPrevAndIfNode:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)node predicate:(KASCBoolean *(^)(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *))predicate condition:(KASCBoolean *(^)(void))condition __attribute__((swift_name("addLastIfPrevAndIf(node:predicate:condition:)"))); +- (BOOL)addOneIfEmptyNode:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)node __attribute__((swift_name("addOneIfEmpty(node:)"))); +- (KASCKotlinx_coroutines_coreLockFreeLinkedListNodeAddLastDesc *)describeAddLastNode:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)node __attribute__((swift_name("describeAddLast(node:)"))); +- (KASCKotlinx_coroutines_coreLockFreeLinkedListNodeRemoveFirstDesc *)describeRemoveFirst __attribute__((swift_name("describeRemoveFirst()"))); +- (void)helpRemove __attribute__((swift_name("helpRemove()"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (KASCKotlinx_coroutines_coreLockFreeLinkedListNode * _Nullable)nextIfRemoved __attribute__((swift_name("nextIfRemoved()"))); +- (BOOL)remove __attribute__((swift_name("remove()"))); +- (id _Nullable)removeFirstIfIsInstanceOfOrPeekIfPredicate:(KASCBoolean *(^)(id _Nullable))predicate __attribute__((swift_name("removeFirstIfIsInstanceOfOrPeekIf(predicate:)"))); +- (KASCKotlinx_coroutines_coreLockFreeLinkedListNode * _Nullable)removeFirstOrNull __attribute__((swift_name("removeFirstOrNull()"))); +- (NSString *)description __attribute__((swift_name("description()"))); +@property (readonly) BOOL isRemoved __attribute__((swift_name("isRemoved"))); +@property (readonly, getter=next_) id next __attribute__((swift_name("next"))); +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode *nextNode __attribute__((swift_name("nextNode"))); +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode *prevNode __attribute__((swift_name("prevNode"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreLockFreeLinkedListNode.AbstractAtomicDesc"))) +@interface KASCKotlinx_coroutines_coreLockFreeLinkedListNodeAbstractAtomicDesc : KASCKotlinx_coroutines_coreAtomicDesc +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)); ++ (instancetype)new __attribute__((availability(swift, unavailable, message="use object initializers instead"))); +- (void)completeOp:(KASCKotlinx_coroutines_coreAtomicOp *)op failure:(id _Nullable)failure __attribute__((swift_name("complete(op:failure:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (id _Nullable)failureAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected __attribute__((swift_name("failure(affected:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)finishOnSuccessAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected next:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)next __attribute__((swift_name("finishOnSuccess(affected:next:)"))); +- (void)finishPreparePrepareOp:(KASCKotlinx_coroutines_coreLockFreeLinkedListNodePrepareOp *)prepareOp __attribute__((swift_name("finishPrepare(prepareOp:)"))); +- (id _Nullable)onPreparePrepareOp:(KASCKotlinx_coroutines_coreLockFreeLinkedListNodePrepareOp *)prepareOp __attribute__((swift_name("onPrepare(prepareOp:)"))); +- (void)onRemovedAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected __attribute__((swift_name("onRemoved(affected:)"))); +- (id _Nullable)prepareOp:(KASCKotlinx_coroutines_coreAtomicOp *)op __attribute__((swift_name("prepare(op:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (BOOL)retryAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected next:(id)next __attribute__((swift_name("retry(affected:next:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (KASCKotlinx_coroutines_coreLockFreeLinkedListNode * _Nullable)takeAffectedNodeOp:(KASCKotlinx_coroutines_coreOpDescriptor *)op __attribute__((swift_name("takeAffectedNode(op:)"))); +- (id)updatedNextAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected next:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)next __attribute__((swift_name("updatedNext(affected:next:)"))); + +/** + * @note This property has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode * _Nullable affectedNode __attribute__((swift_name("affectedNode"))); + +/** + * @note This property has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode * _Nullable originalNext __attribute__((swift_name("originalNext"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreLockFreeLinkedListNodeAddLastDesc"))) +@interface KASCKotlinx_coroutines_coreLockFreeLinkedListNodeAddLastDesc : KASCKotlinx_coroutines_coreLockFreeLinkedListNodeAbstractAtomicDesc +- (instancetype)initWithQueue:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)queue node:(T)node __attribute__((swift_name("init(queue:node:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)finishOnSuccessAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected next:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)next __attribute__((swift_name("finishOnSuccess(affected:next:)"))); +- (void)finishPreparePrepareOp:(KASCKotlinx_coroutines_coreLockFreeLinkedListNodePrepareOp *)prepareOp __attribute__((swift_name("finishPrepare(prepareOp:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (BOOL)retryAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected next:(id)next __attribute__((swift_name("retry(affected:next:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (KASCKotlinx_coroutines_coreLockFreeLinkedListNode * _Nullable)takeAffectedNodeOp:(KASCKotlinx_coroutines_coreOpDescriptor *)op __attribute__((swift_name("takeAffectedNode(op:)"))); +- (id)updatedNextAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected next:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)next __attribute__((swift_name("updatedNext(affected:next:)"))); + +/** + * @note This property has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode * _Nullable affectedNode __attribute__((swift_name("affectedNode"))); +@property (readonly) T node __attribute__((swift_name("node"))); + +/** + * @note This property has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode *originalNext __attribute__((swift_name("originalNext"))); +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode *queue __attribute__((swift_name("queue"))); +@end + +__attribute__((swift_name("Kotlinx_coroutines_coreLockFreeLinkedListNodeRemoveFirstDesc"))) +@interface KASCKotlinx_coroutines_coreLockFreeLinkedListNodeRemoveFirstDesc : KASCKotlinx_coroutines_coreLockFreeLinkedListNodeAbstractAtomicDesc +- (instancetype)initWithQueue:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)queue __attribute__((swift_name("init(queue:)"))) __attribute__((objc_designated_initializer)); +- (instancetype)init __attribute__((swift_name("init()"))) __attribute__((objc_designated_initializer)) __attribute__((unavailable)); ++ (instancetype)new __attribute__((unavailable)); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (id _Nullable)failureAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected __attribute__((swift_name("failure(affected:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (void)finishOnSuccessAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected next:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)next __attribute__((swift_name("finishOnSuccess(affected:next:)"))); +- (void)finishPreparePrepareOp:(KASCKotlinx_coroutines_coreLockFreeLinkedListNodePrepareOp *)prepareOp __attribute__((swift_name("finishPrepare(prepareOp:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (BOOL)retryAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected next:(id)next __attribute__((swift_name("retry(affected:next:)"))); + +/** + * @note This method has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +- (KASCKotlinx_coroutines_coreLockFreeLinkedListNode * _Nullable)takeAffectedNodeOp:(KASCKotlinx_coroutines_coreOpDescriptor *)op __attribute__((swift_name("takeAffectedNode(op:)"))); +- (id)updatedNextAffected:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)affected next:(KASCKotlinx_coroutines_coreLockFreeLinkedListNode *)next __attribute__((swift_name("updatedNext(affected:next:)"))); + +/** + * @note This property has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode * _Nullable affectedNode __attribute__((swift_name("affectedNode"))); + +/** + * @note This property has protected visibility in Kotlin source and is intended only for use by subclasses. +*/ +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode * _Nullable originalNext __attribute__((swift_name("originalNext"))); +@property (readonly) KASCKotlinx_coroutines_coreLockFreeLinkedListNode *queue __attribute__((swift_name("queue"))); +@property (readonly) T _Nullable result __attribute__((swift_name("result"))); +@end + +#pragma pop_macro("_Nullable_result") +#pragma clang diagnostic pop +NS_ASSUME_NONNULL_END diff --git a/KangarooAppSdkCustomer.xcframework/ios-x86_64-simulator/KangarooAppSdkCustomer.framework/Info.plist b/KangarooAppSdkCustomer.xcframework/ios-x86_64-simulator/KangarooAppSdkCustomer.framework/Info.plist new file mode 100644 index 0000000..3a41a63 --- /dev/null +++ b/KangarooAppSdkCustomer.xcframework/ios-x86_64-simulator/KangarooAppSdkCustomer.framework/Info.plist @@ -0,0 +1,31 @@ + + + + + CFBundleExecutable + KangarooAppSdkCustomer + CFBundleIdentifier + features.KangarooAppSdkCustomer + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + KangarooAppSdkCustomer + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSupportedPlatforms + + iPhoneSimulator + + CFBundleVersion + 1 + MinimumOSVersion + 9.0 + UIDeviceFamily + + 1 + 2 + + + \ No newline at end of file diff --git a/KangarooAppSdkCustomer.xcframework/ios-x86_64-simulator/KangarooAppSdkCustomer.framework/KangarooAppSdkCustomer b/KangarooAppSdkCustomer.xcframework/ios-x86_64-simulator/KangarooAppSdkCustomer.framework/KangarooAppSdkCustomer new file mode 100755 index 0000000..65566f8 Binary files /dev/null and b/KangarooAppSdkCustomer.xcframework/ios-x86_64-simulator/KangarooAppSdkCustomer.framework/KangarooAppSdkCustomer differ diff --git a/KangarooAppSdkCustomer.xcframework/ios-x86_64-simulator/KangarooAppSdkCustomer.framework/Modules/module.modulemap b/KangarooAppSdkCustomer.xcframework/ios-x86_64-simulator/KangarooAppSdkCustomer.framework/Modules/module.modulemap new file mode 100644 index 0000000..471a123 --- /dev/null +++ b/KangarooAppSdkCustomer.xcframework/ios-x86_64-simulator/KangarooAppSdkCustomer.framework/Modules/module.modulemap @@ -0,0 +1,8 @@ +framework module KangarooAppSdkCustomer { + umbrella header "KangarooAppSdkCustomer.h" + + export * + module * { export * } + + use Foundation +} \ No newline at end of file diff --git a/KangarooAppSdkCustomer.xcframework/ios-x86_64-simulator/dSYMs/KangarooAppSdkCustomer.framework.dSYM/Contents/Info.plist b/KangarooAppSdkCustomer.xcframework/ios-x86_64-simulator/dSYMs/KangarooAppSdkCustomer.framework.dSYM/Contents/Info.plist new file mode 100644 index 0000000..7176277 --- /dev/null +++ b/KangarooAppSdkCustomer.xcframework/ios-x86_64-simulator/dSYMs/KangarooAppSdkCustomer.framework.dSYM/Contents/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.features.KangarooAppSdkCustomer + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/KangarooAppSdkCustomer.xcframework/ios-x86_64-simulator/dSYMs/KangarooAppSdkCustomer.framework.dSYM/Contents/Resources/DWARF/KangarooAppSdkCustomer b/KangarooAppSdkCustomer.xcframework/ios-x86_64-simulator/dSYMs/KangarooAppSdkCustomer.framework.dSYM/Contents/Resources/DWARF/KangarooAppSdkCustomer new file mode 100644 index 0000000..15a16d1 Binary files /dev/null and b/KangarooAppSdkCustomer.xcframework/ios-x86_64-simulator/dSYMs/KangarooAppSdkCustomer.framework.dSYM/Contents/Resources/DWARF/KangarooAppSdkCustomer differ