@infrab4a/connect-angular 5.5.0-alpha.1 → 5.5.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (194) hide show
  1. package/fesm2022/infrab4a-connect-angular.mjs +286 -246
  2. package/fesm2022/infrab4a-connect-angular.mjs.map +1 -1
  3. package/index.d.ts +755 -6
  4. package/package.json +5 -7
  5. package/angular-connect.module.d.ts +0 -33
  6. package/angular-elastic-search.module.d.ts +0 -9
  7. package/angular-firebase-auth.module.d.ts +0 -10
  8. package/angular-firestore.module.d.ts +0 -16
  9. package/angular-hasura-graphql.module.d.ts +0 -14
  10. package/angular-vertex-search.module.d.ts +0 -9
  11. package/consts/backend-url.const.d.ts +0 -1
  12. package/consts/category-structure.d.ts +0 -1
  13. package/consts/default-shop.const.d.ts +0 -1
  14. package/consts/es-config.const.d.ts +0 -1
  15. package/consts/firebase-const.d.ts +0 -4
  16. package/consts/hasura-options.const.d.ts +0 -1
  17. package/consts/index.d.ts +0 -8
  18. package/consts/persistence.const.d.ts +0 -1
  19. package/consts/storage-base-url.const.d.ts +0 -1
  20. package/consts/vertex-config.const.d.ts +0 -1
  21. package/esm2022/angular-connect.module.mjs +0 -288
  22. package/esm2022/angular-elastic-search.module.mjs +0 -34
  23. package/esm2022/angular-firebase-auth.module.mjs +0 -140
  24. package/esm2022/angular-firestore.module.mjs +0 -538
  25. package/esm2022/angular-hasura-graphql.module.mjs +0 -333
  26. package/esm2022/angular-vertex-search.module.mjs +0 -34
  27. package/esm2022/consts/backend-url.const.mjs +0 -2
  28. package/esm2022/consts/category-structure.mjs +0 -2
  29. package/esm2022/consts/default-shop.const.mjs +0 -2
  30. package/esm2022/consts/es-config.const.mjs +0 -2
  31. package/esm2022/consts/firebase-const.mjs +0 -5
  32. package/esm2022/consts/hasura-options.const.mjs +0 -2
  33. package/esm2022/consts/index.mjs +0 -9
  34. package/esm2022/consts/persistence.const.mjs +0 -2
  35. package/esm2022/consts/storage-base-url.const.mjs +0 -2
  36. package/esm2022/consts/vertex-config.const.mjs +0 -2
  37. package/esm2022/helpers/index.mjs +0 -2
  38. package/esm2022/helpers/mobile-operation-system-checker.helper.mjs +0 -7
  39. package/esm2022/index.mjs +0 -7
  40. package/esm2022/infrab4a-connect-angular.mjs +0 -5
  41. package/esm2022/interfaces/catalog-strategies.interface.mjs +0 -2
  42. package/esm2022/interfaces/category-facades.interface.mjs +0 -2
  43. package/esm2022/interfaces/index.mjs +0 -3
  44. package/esm2022/persistence/cookie-data-persistence.mjs +0 -22
  45. package/esm2022/persistence/data-persistence.mjs +0 -2
  46. package/esm2022/persistence/index.mjs +0 -3
  47. package/esm2022/services/auth.service.mjs +0 -37
  48. package/esm2022/services/cart/cart-services.facade.mjs +0 -21
  49. package/esm2022/services/cart/index.mjs +0 -2
  50. package/esm2022/services/cart.service.mjs +0 -73
  51. package/esm2022/services/catalog/adapters/category-structure.adapter.mjs +0 -2
  52. package/esm2022/services/catalog/adapters/index.mjs +0 -4
  53. package/esm2022/services/catalog/adapters/new-category-structure.adapter.mjs +0 -43
  54. package/esm2022/services/catalog/adapters/old-category-structure.adapter.mjs +0 -23
  55. package/esm2022/services/catalog/catalog.service.mjs +0 -111
  56. package/esm2022/services/catalog/category.service.mjs +0 -42
  57. package/esm2022/services/catalog/context/catalog-search.context.mjs +0 -40
  58. package/esm2022/services/catalog/enums/index.mjs +0 -2
  59. package/esm2022/services/catalog/enums/product-sorts.enum.mjs +0 -11
  60. package/esm2022/services/catalog/facades/catalog-service.facade.mjs +0 -32
  61. package/esm2022/services/catalog/facades/catalog-strategies.facade.mjs +0 -17
  62. package/esm2022/services/catalog/facades/category-repository.facade.mjs +0 -20
  63. package/esm2022/services/catalog/facades/category-service.facade.mjs +0 -30
  64. package/esm2022/services/catalog/facades/index.mjs +0 -6
  65. package/esm2022/services/catalog/facades/product-catalog.facade.mjs +0 -21
  66. package/esm2022/services/catalog/helpers/brand-manager.helper.mjs +0 -57
  67. package/esm2022/services/catalog/helpers/catalog-filter.helper.mjs +0 -44
  68. package/esm2022/services/catalog/helpers/catalog-sort.helper.mjs +0 -52
  69. package/esm2022/services/catalog/helpers/index.mjs +0 -5
  70. package/esm2022/services/catalog/helpers/product-fields.helper.mjs +0 -40
  71. package/esm2022/services/catalog/index.mjs +0 -8
  72. package/esm2022/services/catalog/models/category-with-tree.model.mjs +0 -10
  73. package/esm2022/services/catalog/models/index.mjs +0 -2
  74. package/esm2022/services/catalog/services/catalog-helpers.service.mjs +0 -33
  75. package/esm2022/services/catalog/services/catalog-operations.facade.mjs +0 -26
  76. package/esm2022/services/catalog/services/catalog-repository.service.mjs +0 -25
  77. package/esm2022/services/catalog/services/index.mjs +0 -5
  78. package/esm2022/services/catalog/services/product-management.facade.mjs +0 -25
  79. package/esm2022/services/catalog/strategies/category-search.strategy.mjs +0 -133
  80. package/esm2022/services/catalog/strategies/index.mjs +0 -4
  81. package/esm2022/services/catalog/strategies/profile-search.strategy.mjs +0 -42
  82. package/esm2022/services/catalog/strategies/term-search.strategy.mjs +0 -123
  83. package/esm2022/services/catalog/strategies/types/strategy-params.type.mjs +0 -2
  84. package/esm2022/services/catalog/types/fetch-products-options.type.mjs +0 -2
  85. package/esm2022/services/catalog/types/fetch-products-params.type.mjs +0 -2
  86. package/esm2022/services/catalog/types/fetch-products-response.type.mjs +0 -2
  87. package/esm2022/services/catalog/types/index.mjs +0 -6
  88. package/esm2022/services/catalog/types/method-params.type.mjs +0 -2
  89. package/esm2022/services/catalog/types/product-sort.type.mjs +0 -2
  90. package/esm2022/services/catalog/wishlist.service.mjs +0 -254
  91. package/esm2022/services/checkout/checkout-dependencies.facade.mjs +0 -20
  92. package/esm2022/services/checkout/checkout-repositories.facade.mjs +0 -20
  93. package/esm2022/services/checkout/index.mjs +0 -3
  94. package/esm2022/services/checkout-subscription.service.mjs +0 -55
  95. package/esm2022/services/checkout.service.mjs +0 -106
  96. package/esm2022/services/coupon/coupon-repositories.facade.mjs +0 -24
  97. package/esm2022/services/coupon/index.mjs +0 -2
  98. package/esm2022/services/coupon/types/coupon-params.type.mjs +0 -2
  99. package/esm2022/services/coupon.service.mjs +0 -248
  100. package/esm2022/services/helpers/index.mjs +0 -2
  101. package/esm2022/services/helpers/util.helper.mjs +0 -18
  102. package/esm2022/services/home-shop/home-shop-repositories.facade.mjs +0 -24
  103. package/esm2022/services/home-shop/index.mjs +0 -2
  104. package/esm2022/services/home-shop.service.mjs +0 -119
  105. package/esm2022/services/index.mjs +0 -11
  106. package/esm2022/services/order-product-review.service.mjs +0 -110
  107. package/esm2022/services/order.service.mjs +0 -30
  108. package/esm2022/services/shared/configuration.facade.mjs +0 -29
  109. package/esm2022/services/shared/index.mjs +0 -2
  110. package/esm2022/services/types/index.mjs +0 -5
  111. package/esm2022/services/types/pending-product-review.type.mjs +0 -2
  112. package/esm2022/services/types/product-review-create.type.mjs +0 -2
  113. package/esm2022/services/types/required-checkout-data.type.mjs +0 -2
  114. package/esm2022/services/types/required-checkout-subscription-data.type.mjs +0 -2
  115. package/esm2022/types/firebase-app-config.type.mjs +0 -2
  116. package/esm2022/types/index.mjs +0 -2
  117. package/helpers/index.d.ts +0 -1
  118. package/helpers/mobile-operation-system-checker.helper.d.ts +0 -3
  119. package/interfaces/catalog-strategies.interface.d.ts +0 -31
  120. package/interfaces/category-facades.interface.d.ts +0 -6
  121. package/interfaces/index.d.ts +0 -2
  122. package/persistence/cookie-data-persistence.d.ts +0 -10
  123. package/persistence/data-persistence.d.ts +0 -6
  124. package/persistence/index.d.ts +0 -2
  125. package/services/auth.service.d.ts +0 -18
  126. package/services/cart/cart-services.facade.d.ts +0 -12
  127. package/services/cart/index.d.ts +0 -1
  128. package/services/cart.service.d.ts +0 -26
  129. package/services/catalog/adapters/category-structure.adapter.d.ts +0 -4
  130. package/services/catalog/adapters/index.d.ts +0 -3
  131. package/services/catalog/adapters/new-category-structure.adapter.d.ts +0 -12
  132. package/services/catalog/adapters/old-category-structure.adapter.d.ts +0 -10
  133. package/services/catalog/catalog.service.d.ts +0 -24
  134. package/services/catalog/category.service.d.ts +0 -23
  135. package/services/catalog/context/catalog-search.context.d.ts +0 -14
  136. package/services/catalog/enums/index.d.ts +0 -1
  137. package/services/catalog/enums/product-sorts.enum.d.ts +0 -9
  138. package/services/catalog/facades/catalog-service.facade.d.ts +0 -15
  139. package/services/catalog/facades/catalog-strategies.facade.d.ts +0 -10
  140. package/services/catalog/facades/category-repository.facade.d.ts +0 -9
  141. package/services/catalog/facades/category-service.facade.d.ts +0 -15
  142. package/services/catalog/facades/index.d.ts +0 -5
  143. package/services/catalog/facades/product-catalog.facade.d.ts +0 -10
  144. package/services/catalog/helpers/brand-manager.helper.d.ts +0 -14
  145. package/services/catalog/helpers/catalog-filter.helper.d.ts +0 -8
  146. package/services/catalog/helpers/catalog-sort.helper.d.ts +0 -7
  147. package/services/catalog/helpers/index.d.ts +0 -4
  148. package/services/catalog/helpers/product-fields.helper.d.ts +0 -7
  149. package/services/catalog/index.d.ts +0 -7
  150. package/services/catalog/models/category-with-tree.model.d.ts +0 -4
  151. package/services/catalog/models/index.d.ts +0 -1
  152. package/services/catalog/services/catalog-helpers.service.d.ts +0 -17
  153. package/services/catalog/services/catalog-operations.facade.d.ts +0 -13
  154. package/services/catalog/services/catalog-repository.service.d.ts +0 -12
  155. package/services/catalog/services/index.d.ts +0 -4
  156. package/services/catalog/services/product-management.facade.d.ts +0 -12
  157. package/services/catalog/strategies/category-search.strategy.d.ts +0 -19
  158. package/services/catalog/strategies/index.d.ts +0 -3
  159. package/services/catalog/strategies/profile-search.strategy.d.ts +0 -14
  160. package/services/catalog/strategies/term-search.strategy.d.ts +0 -20
  161. package/services/catalog/strategies/types/strategy-params.type.d.ts +0 -58
  162. package/services/catalog/types/fetch-products-options.type.d.ts +0 -8
  163. package/services/catalog/types/fetch-products-params.type.d.ts +0 -25
  164. package/services/catalog/types/fetch-products-response.type.d.ts +0 -19
  165. package/services/catalog/types/index.d.ts +0 -5
  166. package/services/catalog/types/method-params.type.d.ts +0 -17
  167. package/services/catalog/types/product-sort.type.d.ts +0 -2
  168. package/services/catalog/wishlist.service.d.ts +0 -59
  169. package/services/checkout/checkout-dependencies.facade.d.ts +0 -10
  170. package/services/checkout/checkout-repositories.facade.d.ts +0 -9
  171. package/services/checkout/index.d.ts +0 -2
  172. package/services/checkout-subscription.service.d.ts +0 -19
  173. package/services/checkout.service.d.ts +0 -30
  174. package/services/coupon/coupon-repositories.facade.d.ts +0 -10
  175. package/services/coupon/index.d.ts +0 -1
  176. package/services/coupon/types/coupon-params.type.d.ts +0 -13
  177. package/services/coupon.service.d.ts +0 -36
  178. package/services/helpers/index.d.ts +0 -1
  179. package/services/helpers/util.helper.d.ts +0 -3
  180. package/services/home-shop/home-shop-repositories.facade.d.ts +0 -10
  181. package/services/home-shop/index.d.ts +0 -1
  182. package/services/home-shop.service.d.ts +0 -26
  183. package/services/index.d.ts +0 -10
  184. package/services/order-product-review.service.d.ts +0 -16
  185. package/services/order.service.d.ts +0 -13
  186. package/services/shared/configuration.facade.d.ts +0 -12
  187. package/services/shared/index.d.ts +0 -1
  188. package/services/types/index.d.ts +0 -4
  189. package/services/types/pending-product-review.type.d.ts +0 -12
  190. package/services/types/product-review-create.type.d.ts +0 -14
  191. package/services/types/required-checkout-data.type.d.ts +0 -2
  192. package/services/types/required-checkout-subscription-data.type.d.ts +0 -2
  193. package/types/firebase-app-config.type.d.ts +0 -1
  194. package/types/index.d.ts +0 -1
package/index.d.ts CHANGED
@@ -1,6 +1,755 @@
1
- export * from './angular-connect.module';
2
- export * from './angular-firebase-auth.module';
3
- export * from './angular-firestore.module';
4
- export * from './angular-hasura-graphql.module';
5
- export * from './persistence';
6
- export * from './services';
1
+ import * as i0 from '@angular/core';
2
+ import { ModuleWithProviders, Type } from '@angular/core';
3
+ import { FirebaseOptions } from '@angular/fire/app';
4
+ import { AppCheckOptions } from '@angular/fire/app-check';
5
+ import * as _infrab4a_connect from '@infrab4a/connect';
6
+ import { HasuraGraphQLAuthOptions, CacheConfig, AxiosElasticSearchConfig, VertexSearchConfig, FirestoreConstructorParams, Shops, UserRepository, User, Checkout, CheckoutSubscription, CheckoutRepository, CheckoutTypes, Coupon, CheckoutStockValidation, UserAddress, ShippingProductRequest, ShippingMethodResponse, CheckoutPayloadRequest, CheckoutResponse, LineItem, CategoryRepository, Category as Category$1, RepositoryFindFielters as RepositoryFindFielters$1, Product as Product$1, ProductGender, RepositoryCacheOptions, RepositoryFindResult, ProductStockNotificationRepository, ProductSearchIndex, CategoryFilterRepository, Filter, ProductRepository, RepositoryOrderBy, NonFunctionPropertyNames, WishlistRepository, LogRepository, PersonType, Wishlist, CouponRepository, OrderRepository, CheckoutSubscriptionRepository, HomeRepository, Home, Banner, OrderFirestoreRepository, ProductReviewRepository, VariantRepository, ProductReview, Order } from '@infrab4a/connect';
7
+ import { Observable, Subject } from 'rxjs';
8
+ import { Auth, User as User$1 } from '@angular/fire/auth';
9
+ import { HttpClient } from '@angular/common/http';
10
+ import { Category, RepositoryFindFielters, Product } from '@infrab4a/connect/';
11
+ import { Shops as Shops$1 } from '@infrab4a/connect/src';
12
+ import { Firestore } from '@angular/fire/firestore';
13
+
14
+ type HasuraGraphQLOptions = {
15
+ endpoint: string;
16
+ credentials?: HasuraGraphQLAuthOptions;
17
+ cache?: CacheConfig;
18
+ };
19
+ declare class AngularHasuraGraphQLModule {
20
+ static initializeApp(options: HasuraGraphQLOptions): ModuleWithProviders<AngularHasuraGraphQLModule>;
21
+ static ɵfac: i0.ɵɵFactoryDeclaration<AngularHasuraGraphQLModule, never>;
22
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AngularHasuraGraphQLModule, never, never, never>;
23
+ static ɵinj: i0.ɵɵInjectorDeclaration<AngularHasuraGraphQLModule>;
24
+ }
25
+
26
+ interface DataPersistence {
27
+ get(key: string): Observable<string>;
28
+ remove(key: string): Observable<void>;
29
+ set(key: string, value: string): Observable<void>;
30
+ }
31
+
32
+ declare class CookieDataPersistence implements DataPersistence {
33
+ get(key: string): Observable<string>;
34
+ remove(key: string): Observable<void>;
35
+ set(key: string, value: string): Observable<void>;
36
+ static ɵfac: i0.ɵɵFactoryDeclaration<CookieDataPersistence, never>;
37
+ static ɵprov: i0.ɵɵInjectableDeclaration<CookieDataPersistence>;
38
+ }
39
+
40
+ type FirebaseAppConfig = Record<string, any>;
41
+
42
+ declare class AngularElasticSeachModule {
43
+ static initializeApp(options: AxiosElasticSearchConfig): ModuleWithProviders<AngularElasticSeachModule>;
44
+ static ɵfac: i0.ɵɵFactoryDeclaration<AngularElasticSeachModule, never>;
45
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AngularElasticSeachModule, never, never, never>;
46
+ static ɵinj: i0.ɵɵInjectorDeclaration<AngularElasticSeachModule>;
47
+ }
48
+
49
+ declare class AngularVertexSeachModule {
50
+ static initializeApp(options: VertexSearchConfig): ModuleWithProviders<AngularVertexSeachModule>;
51
+ static ɵfac: i0.ɵɵFactoryDeclaration<AngularVertexSeachModule, never>;
52
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AngularVertexSeachModule, never, never, never>;
53
+ static ɵinj: i0.ɵɵInjectorDeclaration<AngularVertexSeachModule>;
54
+ }
55
+
56
+ declare class AngularFirebaseAuthModule {
57
+ static initializeApp(options: FirebaseOptions, nameOrConfig?: string | FirebaseAppConfig): ModuleWithProviders<AngularFirebaseAuthModule>;
58
+ static ɵfac: i0.ɵɵFactoryDeclaration<AngularFirebaseAuthModule, never>;
59
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AngularFirebaseAuthModule, never, never, never>;
60
+ static ɵinj: i0.ɵɵInjectorDeclaration<AngularFirebaseAuthModule>;
61
+ }
62
+
63
+ type FirestoreOptions = Pick<FirestoreConstructorParams<any>, 'firestore' | 'interceptors'>;
64
+ declare class AngularFirestoreModule {
65
+ static initializeApp(options: {
66
+ firebase: FirebaseOptions;
67
+ elasticSearch: AxiosElasticSearchConfig;
68
+ }, nameOrConfig?: string | FirebaseAppConfig): ModuleWithProviders<AngularFirestoreModule>;
69
+ static ɵfac: i0.ɵɵFactoryDeclaration<AngularFirestoreModule, never>;
70
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AngularFirestoreModule, never, [typeof AngularElasticSeachModule], never>;
71
+ static ɵinj: i0.ɵɵInjectorDeclaration<AngularFirestoreModule>;
72
+ }
73
+
74
+ declare class AngularConnectModule {
75
+ static initializeApp(defaultShop: Shops, options: {
76
+ firebase?: FirebaseOptions;
77
+ elasticSearch?: AxiosElasticSearchConfig;
78
+ vertexConfig?: VertexSearchConfig;
79
+ hasura: HasuraGraphQLOptions;
80
+ backendUrl: string;
81
+ oldCategoryStructure?: boolean;
82
+ storageBaseUrl?: string;
83
+ persistenceProvider?: Type<DataPersistence>;
84
+ appCheckProvider?: AppCheckOptions['provider'];
85
+ }, nameOrConfig?: string | FirebaseAppConfig): ModuleWithProviders<AngularConnectModule>;
86
+ private static buildCoreProviders;
87
+ private static buildConditionalProviders;
88
+ private static selectCategoryStructureAdapter;
89
+ private static createProviderIfExists;
90
+ static ɵfac: i0.ɵɵFactoryDeclaration<AngularConnectModule, never>;
91
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AngularConnectModule, never, [typeof AngularElasticSeachModule, typeof AngularVertexSeachModule, typeof AngularFirebaseAuthModule, typeof AngularFirestoreModule, typeof AngularHasuraGraphQLModule], never>;
92
+ static ɵinj: i0.ɵɵInjectorDeclaration<AngularConnectModule>;
93
+ }
94
+
95
+ declare class AuthService {
96
+ private readonly angularFireAuth;
97
+ private readonly userRepository;
98
+ constructor(angularFireAuth: Auth, userRepository: UserRepository);
99
+ getAuthstate(): Observable<{
100
+ user: User;
101
+ isAnonymous: boolean;
102
+ }>;
103
+ getUser(): Observable<User>;
104
+ getTokenId(): Observable<string>;
105
+ getFireUser(): Observable<User$1>;
106
+ static ɵfac: i0.ɵɵFactoryDeclaration<AuthService, never>;
107
+ static ɵprov: i0.ɵɵInjectableDeclaration<AuthService>;
108
+ }
109
+
110
+ type PendingProductReview = {
111
+ id: string;
112
+ isEdition: boolean;
113
+ orderId: string;
114
+ orderNumber: string;
115
+ name: string;
116
+ image: string;
117
+ deliveryDate: string;
118
+ evaluationInAnalysis: boolean;
119
+ rating?: number;
120
+ shopProductSlug: string;
121
+ };
122
+
123
+ type ProductReviewCreate = {
124
+ productId: string;
125
+ shop: Shops$1;
126
+ rate: number;
127
+ author: string;
128
+ email: string;
129
+ location: string;
130
+ comment: string;
131
+ title: string;
132
+ personId: number;
133
+ points: number;
134
+ orderId: string;
135
+ };
136
+
137
+ type RequiredCheckoutData = Partial<Pick<Checkout, 'id' | 'user' | 'shop' | 'lineItems'>>;
138
+
139
+ type RequiredCheckoutSubscriptionData = Partial<Pick<CheckoutSubscription, 'id'>>;
140
+
141
+ declare class CheckoutRepositoriesFacade {
142
+ readonly checkoutRepository: CheckoutRepository;
143
+ readonly userRepository: UserRepository;
144
+ constructor(checkoutRepository: CheckoutRepository, userRepository: UserRepository);
145
+ static ɵfac: i0.ɵɵFactoryDeclaration<CheckoutRepositoriesFacade, never>;
146
+ static ɵprov: i0.ɵɵInjectableDeclaration<CheckoutRepositoriesFacade>;
147
+ }
148
+
149
+ declare class CheckoutDependenciesFacade {
150
+ readonly dataPersistence: DataPersistence;
151
+ readonly httpClient: HttpClient;
152
+ constructor(dataPersistence: DataPersistence, httpClient: HttpClient);
153
+ static ɵfac: i0.ɵɵFactoryDeclaration<CheckoutDependenciesFacade, never>;
154
+ static ɵprov: i0.ɵɵInjectableDeclaration<CheckoutDependenciesFacade>;
155
+ }
156
+
157
+ declare class ConfigurationFacade {
158
+ readonly defaultShop: Shops;
159
+ readonly firebaseOptions: FirebaseOptions;
160
+ constructor(defaultShop: Shops, firebaseOptions: FirebaseOptions);
161
+ getCheckoutUrl(): string;
162
+ getProjectId(): string;
163
+ static ɵfac: i0.ɵɵFactoryDeclaration<ConfigurationFacade, never>;
164
+ static ɵprov: i0.ɵɵInjectableDeclaration<ConfigurationFacade>;
165
+ }
166
+
167
+ declare class CheckoutService {
168
+ private readonly repositoriesFacade;
169
+ private readonly dependenciesFacade;
170
+ private readonly configurationFacade;
171
+ private checkoutUrl;
172
+ constructor(repositoriesFacade: CheckoutRepositoriesFacade, dependenciesFacade: CheckoutDependenciesFacade, configurationFacade: ConfigurationFacade);
173
+ getCheckout(checkoutData?: RequiredCheckoutData): Observable<Checkout>;
174
+ getUserByCheckout(checkoutId: string): Observable<User>;
175
+ updateCheckoutLineItems(checkout: Partial<Checkout>): Observable<Checkout>;
176
+ updateCheckoutUser(checkout: Partial<Checkout>): Observable<Checkout>;
177
+ clearCheckoutFromSession(): Observable<void>;
178
+ resetCheckoutValues(): Observable<Checkout>;
179
+ applyCouponDiscount(nickname: string, checkoutType: CheckoutTypes): Observable<Coupon>;
180
+ removeCouponDiscount(): Observable<Checkout>;
181
+ validateStockProducts(): Observable<CheckoutStockValidation>;
182
+ selectShippingAddress(address: UserAddress): Observable<Checkout>;
183
+ getAvailableShippingForProduct(productShipping: ShippingProductRequest): Observable<ShippingMethodResponse[]>;
184
+ getAvailableShippingForCheckout(): Observable<ShippingMethodResponse[]>;
185
+ selectShipping(option: string): Observable<Checkout>;
186
+ createOrder(checkoutPayload: CheckoutPayloadRequest, paymentProvider: string, applicationVersion: string): Observable<CheckoutResponse>;
187
+ private createCheckout;
188
+ static ɵfac: i0.ɵɵFactoryDeclaration<CheckoutService, never>;
189
+ static ɵprov: i0.ɵɵInjectableDeclaration<CheckoutService>;
190
+ }
191
+
192
+ declare class CartServicesFacade {
193
+ readonly authService: AuthService;
194
+ readonly checkoutService: CheckoutService;
195
+ readonly httpClient: HttpClient;
196
+ constructor(authService: AuthService, checkoutService: CheckoutService, httpClient: HttpClient);
197
+ static ɵfac: i0.ɵɵFactoryDeclaration<CartServicesFacade, never>;
198
+ static ɵprov: i0.ɵɵInjectableDeclaration<CartServicesFacade>;
199
+ }
200
+
201
+ type Cart = {
202
+ [id: string]: LineItem;
203
+ };
204
+ declare class CartService {
205
+ private readonly servicesFacade;
206
+ private readonly configurationFacade;
207
+ private cartSubject;
208
+ private checkoutUrl;
209
+ constructor(servicesFacade: CartServicesFacade, configurationFacade: ConfigurationFacade);
210
+ addItem(item: LineItem, quantity?: number): Observable<Cart>;
211
+ decreaseItem(item: LineItem): Observable<Cart>;
212
+ removeItem(item: LineItem): Observable<Cart>;
213
+ updateUserCart(user: User): Observable<Cart>;
214
+ getCart(checkout?: RequiredCheckoutData): Observable<Cart>;
215
+ clearCart(): Observable<Cart>;
216
+ private buildCartFromCheckout;
217
+ private generateCartObject;
218
+ static ɵfac: i0.ɵɵFactoryDeclaration<CartService, never>;
219
+ static ɵprov: i0.ɵɵInjectableDeclaration<CartService>;
220
+ }
221
+
222
+ interface CategoryStructureAdapter {
223
+ buildProductFilterByCategory(category: Category): Promise<RepositoryFindFielters<Product>>;
224
+ }
225
+
226
+ declare class NewCategoryStructureAdapter implements CategoryStructureAdapter {
227
+ private readonly categoryRepository;
228
+ constructor(categoryRepository: CategoryRepository);
229
+ buildProductFilterByCategory(category: Category$1): Promise<RepositoryFindFielters$1<Product$1>>;
230
+ private getAllCategoriesIdFromCategory;
231
+ private getCategory;
232
+ static ɵfac: i0.ɵɵFactoryDeclaration<NewCategoryStructureAdapter, never>;
233
+ static ɵprov: i0.ɵɵInjectableDeclaration<NewCategoryStructureAdapter>;
234
+ }
235
+
236
+ declare class OldCategoryStructureAdapter implements CategoryStructureAdapter {
237
+ private readonly categoryRepository;
238
+ constructor(categoryRepository: CategoryRepository);
239
+ buildProductFilterByCategory(category: Category$1): Promise<RepositoryFindFielters$1<Product$1>>;
240
+ static ɵfac: i0.ɵɵFactoryDeclaration<OldCategoryStructureAdapter, never>;
241
+ static ɵprov: i0.ɵɵInjectableDeclaration<OldCategoryStructureAdapter>;
242
+ }
243
+
244
+ interface CatalogSearchParams {
245
+ category?: Category$1;
246
+ profile?: string[];
247
+ term?: string;
248
+ filters?: CatalogFilters;
249
+ mainGender?: ProductGender;
250
+ limits: {
251
+ limit?: number;
252
+ offset?: number;
253
+ };
254
+ sort?: string;
255
+ }
256
+ interface CatalogFilters {
257
+ clubDiscount?: number[];
258
+ brands?: string[];
259
+ prices?: {
260
+ min?: number;
261
+ max?: number;
262
+ subscriberPrice?: boolean;
263
+ };
264
+ gender?: ProductGender[];
265
+ rate?: number;
266
+ customOptions?: string[];
267
+ tags?: string[];
268
+ }
269
+ interface CatalogSearchStrategy {
270
+ search(params: CatalogSearchParams, shop: Shops, optionsCache?: {
271
+ cache?: RepositoryCacheOptions;
272
+ }): Promise<RepositoryFindResult<Product$1>>;
273
+ }
274
+
275
+ interface ProductServicesFacade {
276
+ productStockNotificationRepository: ProductStockNotificationRepository;
277
+ categoryRepository: CategoryRepository;
278
+ productSearch: ProductSearchIndex;
279
+ }
280
+
281
+ declare class CatalogSearchContext {
282
+ private readonly categoryStrategy;
283
+ private readonly termStrategy;
284
+ private readonly profileStrategy;
285
+ private strategies;
286
+ constructor(categoryStrategy: CatalogSearchStrategy, termStrategy: CatalogSearchStrategy, profileStrategy: CatalogSearchStrategy);
287
+ executeSearch(params: CatalogSearchParams, shop: Shops, optionsCache?: {
288
+ cache?: RepositoryCacheOptions;
289
+ }): Promise<RepositoryFindResult<Product$1>>;
290
+ private initializeStrategies;
291
+ private selectStrategy;
292
+ }
293
+
294
+ declare class CategorySearchStrategy implements CatalogSearchStrategy {
295
+ private readonly repositoryService;
296
+ private readonly helpersService;
297
+ constructor(repositoryService: CatalogRepositoryService, helpersService: CatalogHelpersService);
298
+ search(params: CatalogSearchParams, shop: Shops, optionsCache?: {
299
+ cache?: RepositoryCacheOptions;
300
+ }): Promise<RepositoryFindResult<Product$1>>;
301
+ private searchWithMostRelevant;
302
+ private searchDefault;
303
+ private getProductIds;
304
+ private findAndSortByMostRelevant;
305
+ private sortProductsByRelevance;
306
+ static ɵfac: i0.ɵɵFactoryDeclaration<CategorySearchStrategy, never>;
307
+ static ɵprov: i0.ɵɵInjectableDeclaration<CategorySearchStrategy>;
308
+ }
309
+
310
+ declare class ProfileSearchStrategy implements CatalogSearchStrategy {
311
+ private readonly repositoryService;
312
+ private readonly helpersService;
313
+ constructor(repositoryService: CatalogRepositoryService, helpersService: CatalogHelpersService);
314
+ search(params: CatalogSearchParams, shop: Shops, optionsCache?: {
315
+ cache?: RepositoryCacheOptions;
316
+ }): Promise<RepositoryFindResult<Product$1>>;
317
+ static ɵfac: i0.ɵɵFactoryDeclaration<ProfileSearchStrategy, never>;
318
+ static ɵprov: i0.ɵɵInjectableDeclaration<ProfileSearchStrategy>;
319
+ }
320
+
321
+ declare class TermSearchStrategy implements CatalogSearchStrategy {
322
+ private readonly repositoryService;
323
+ private readonly helpersService;
324
+ private productsByTerm;
325
+ constructor(repositoryService: CatalogRepositoryService, helpersService: CatalogHelpersService);
326
+ search(params: CatalogSearchParams, shop: Shops, _optionsCache?: {
327
+ cache?: RepositoryCacheOptions;
328
+ }): Promise<RepositoryFindResult<Product$1>>;
329
+ private searchWithMostRelevant;
330
+ private searchDefault;
331
+ private sortByTermRelevance;
332
+ private getDetailedProducts;
333
+ private findCatalogIdsBySearch;
334
+ static ɵfac: i0.ɵɵFactoryDeclaration<TermSearchStrategy, never>;
335
+ static ɵprov: i0.ɵɵInjectableDeclaration<TermSearchStrategy>;
336
+ }
337
+
338
+ declare class CatalogStrategiesFacade {
339
+ readonly categoryStrategy: CategorySearchStrategy;
340
+ readonly termStrategy: TermSearchStrategy;
341
+ readonly profileStrategy: ProfileSearchStrategy;
342
+ constructor(categoryStrategy: CategorySearchStrategy, termStrategy: TermSearchStrategy, profileStrategy: ProfileSearchStrategy);
343
+ static ɵfac: i0.ɵɵFactoryDeclaration<CatalogStrategiesFacade, never>;
344
+ static ɵprov: i0.ɵɵInjectableDeclaration<CatalogStrategiesFacade>;
345
+ }
346
+
347
+ declare class CatalogServiceFacade {
348
+ private readonly helpersService;
349
+ private readonly strategiesFacade;
350
+ private readonly shop;
351
+ private catalogService;
352
+ constructor(helpersService: CatalogHelpersService, strategiesFacade: CatalogStrategiesFacade, shop: Shops);
353
+ getCatalogService(): CatalogService;
354
+ static ɵfac: i0.ɵɵFactoryDeclaration<CatalogServiceFacade, never>;
355
+ static ɵprov: i0.ɵɵInjectableDeclaration<CatalogServiceFacade>;
356
+ }
357
+
358
+ declare class CategoryRepositoryFacade {
359
+ readonly categoryRepository: CategoryRepository;
360
+ readonly categoryFilterRepository: CategoryFilterRepository;
361
+ constructor(categoryRepository: CategoryRepository, categoryFilterRepository: CategoryFilterRepository);
362
+ static ɵfac: i0.ɵɵFactoryDeclaration<CategoryRepositoryFacade, never>;
363
+ static ɵprov: i0.ɵɵInjectableDeclaration<CategoryRepositoryFacade>;
364
+ }
365
+
366
+ type FetchBrandsOptions = {
367
+ mainGender?: ProductGender;
368
+ shop?: Shops;
369
+ };
370
+ declare class CategoryService {
371
+ private readonly categoryFacade;
372
+ private readonly productCatalog;
373
+ private readonly shop;
374
+ constructor(categoryFacade: CategoryRepositoryFacade, productCatalog: ProductCatalogFacade, shop: Shops);
375
+ fetchBrands(category: Category$1, options?: FetchBrandsOptions, optionsCache?: {
376
+ cache?: RepositoryCacheOptions;
377
+ }): Promise<Category$1[]>;
378
+ getMenuBrands(): Promise<Category$1[]>;
379
+ fetchFilterOptions(category: Category$1, optionsCache?: {
380
+ cache?: RepositoryCacheOptions;
381
+ }): Promise<Filter[]>;
382
+ static ɵfac: i0.ɵɵFactoryDeclaration<CategoryService, never>;
383
+ static ɵprov: i0.ɵɵInjectableDeclaration<CategoryService>;
384
+ }
385
+
386
+ declare class ProductCatalogFacade {
387
+ readonly productRepository: ProductRepository;
388
+ readonly categoryStructureAdapter: CategoryStructureAdapter;
389
+ constructor(productRepository: ProductRepository, categoryStructureAdapter: CategoryStructureAdapter);
390
+ static ɵfac: i0.ɵɵFactoryDeclaration<ProductCatalogFacade, never>;
391
+ static ɵprov: i0.ɵɵInjectableDeclaration<ProductCatalogFacade>;
392
+ }
393
+
394
+ declare class CategoryServiceFacade {
395
+ private readonly categoryRepositoryFacade;
396
+ private readonly productCatalogFacade;
397
+ private readonly shop;
398
+ private categoryService;
399
+ constructor(categoryRepositoryFacade: CategoryRepositoryFacade, productCatalogFacade: ProductCatalogFacade, shop: Shops);
400
+ getCategoryService(): CategoryService;
401
+ static ɵfac: i0.ɵɵFactoryDeclaration<CategoryServiceFacade, never>;
402
+ static ɵprov: i0.ɵɵInjectableDeclaration<CategoryServiceFacade>;
403
+ }
404
+
405
+ declare class BrandManagerHelper {
406
+ private readonly productCatalog;
407
+ private brandsList;
408
+ constructor(productCatalog: ProductCatalogFacade);
409
+ setBrandsList(options: CatalogSearchParams, brands: string[]): Promise<void>;
410
+ getBrandsList(indexKey: string): string[];
411
+ buildIndexBrands(options: CatalogSearchParams): string;
412
+ private fetchBrandsOnly;
413
+ static ɵfac: i0.ɵɵFactoryDeclaration<BrandManagerHelper, never>;
414
+ static ɵprov: i0.ɵɵInjectableDeclaration<BrandManagerHelper>;
415
+ }
416
+
417
+ declare class CatalogFilterHelper {
418
+ buildFilterQuery(filters: CatalogFilters): RepositoryFindFielters$1<Product$1>;
419
+ static ɵfac: i0.ɵɵFactoryDeclaration<CatalogFilterHelper, never>;
420
+ static ɵprov: i0.ɵɵInjectableDeclaration<CatalogFilterHelper>;
421
+ }
422
+
423
+ declare class CatalogSortHelper {
424
+ buildSortQuery(sort: string): RepositoryOrderBy<Product$1>;
425
+ static ɵfac: i0.ɵɵFactoryDeclaration<CatalogSortHelper, never>;
426
+ static ɵprov: i0.ɵɵInjectableDeclaration<CatalogSortHelper>;
427
+ }
428
+
429
+ declare class ProductFieldsHelper {
430
+ getStandardFields(): NonFunctionPropertyNames<Product$1>[];
431
+ static ɵfac: i0.ɵɵFactoryDeclaration<ProductFieldsHelper, never>;
432
+ static ɵprov: i0.ɵɵInjectableDeclaration<ProductFieldsHelper>;
433
+ }
434
+
435
+ declare class CatalogOperationsFacade {
436
+ private readonly filterHelper;
437
+ private readonly sortHelper;
438
+ private readonly fieldsHelper;
439
+ constructor(filterHelper: CatalogFilterHelper, sortHelper: CatalogSortHelper, fieldsHelper: ProductFieldsHelper);
440
+ getFilterHelper(): CatalogFilterHelper;
441
+ getSortHelper(): CatalogSortHelper;
442
+ getFieldsHelper(): ProductFieldsHelper;
443
+ static ɵfac: i0.ɵɵFactoryDeclaration<CatalogOperationsFacade, never>;
444
+ static ɵprov: i0.ɵɵInjectableDeclaration<CatalogOperationsFacade>;
445
+ }
446
+
447
+ declare class ProductManagementFacade {
448
+ private readonly brandManager;
449
+ private readonly productServices;
450
+ constructor(brandManager: BrandManagerHelper, productServices: ProductServicesFacade);
451
+ getBrandManager(): BrandManagerHelper;
452
+ getProductServices(): ProductServicesFacade;
453
+ static ɵfac: i0.ɵɵFactoryDeclaration<ProductManagementFacade, never>;
454
+ static ɵprov: i0.ɵɵInjectableDeclaration<ProductManagementFacade>;
455
+ }
456
+
457
+ declare class CatalogHelpersService {
458
+ private readonly catalogOperations;
459
+ private readonly productManagement;
460
+ constructor(catalogOperations: CatalogOperationsFacade, productManagement: ProductManagementFacade);
461
+ getFilterHelper(): CatalogFilterHelper;
462
+ getSortHelper(): CatalogSortHelper;
463
+ getFieldsHelper(): ProductFieldsHelper;
464
+ getBrandManager(): BrandManagerHelper;
465
+ getProductServices(): ProductServicesFacade;
466
+ static ɵfac: i0.ɵɵFactoryDeclaration<CatalogHelpersService, never>;
467
+ static ɵprov: i0.ɵɵInjectableDeclaration<CatalogHelpersService>;
468
+ }
469
+
470
+ declare class CatalogRepositoryService {
471
+ private readonly productCatalog;
472
+ private readonly productServices;
473
+ constructor(productCatalog: ProductCatalogFacade, productServices: ProductServicesFacade);
474
+ getProductCatalog(): ProductCatalogFacade;
475
+ getProductServices(): ProductServicesFacade;
476
+ static ɵfac: i0.ɵɵFactoryDeclaration<CatalogRepositoryService, never>;
477
+ static ɵprov: i0.ɵɵInjectableDeclaration<CatalogRepositoryService>;
478
+ }
479
+
480
+ declare enum ProductSorts {
481
+ MOST_RELEVANT = "most-relevant",
482
+ BEST_SELLER = "best-sellers",
483
+ BIGGEST_PRICE = "biggest-price",
484
+ LOWEST_PRICE = "lowest-price",
485
+ BIGGEST_DISCOUNT = "biggest-discount",
486
+ BEST_RATING = "best-rating",
487
+ NEWS = "news"
488
+ }
489
+
490
+ type ProductSort = `${ProductSorts}`;
491
+
492
+ type FetchProductsOptions = {
493
+ page?: number;
494
+ perPage?: number;
495
+ sort?: ProductSort;
496
+ mainGender?: ProductGender;
497
+ };
498
+
499
+ type FetchProductsMainParams<T extends Category$1> = {
500
+ category?: T;
501
+ profile?: string[];
502
+ term?: string;
503
+ };
504
+ type FetchProductsParams<T extends Category$1> = FetchProductsOptions & ({
505
+ category: FetchProductsMainParams<T>['category'];
506
+ filters?: CatalogFilters & {
507
+ customOptions?: never;
508
+ };
509
+ } | {
510
+ profile: FetchProductsMainParams<T>['profile'];
511
+ filters?: CatalogFilters & {
512
+ customOptions?: never;
513
+ tags?: never;
514
+ };
515
+ } | {
516
+ term: FetchProductsMainParams<T>['term'];
517
+ filters?: CatalogFilters & {
518
+ customOptions?: never;
519
+ };
520
+ });
521
+
522
+ type FetchProductsResponse = {
523
+ products: {
524
+ data: Product$1[];
525
+ total: number;
526
+ };
527
+ pages: number;
528
+ prices: {
529
+ price: {
530
+ min: number;
531
+ max: number;
532
+ };
533
+ subscriberPrice: {
534
+ min: number;
535
+ max: number;
536
+ };
537
+ };
538
+ brands?: string[];
539
+ };
540
+
541
+ type StockNotificationParams = {
542
+ shop: Shops;
543
+ productId: string;
544
+ name: string;
545
+ email: string;
546
+ };
547
+ type BuildResponseParams<T extends Category$1 = Category$1> = {
548
+ data: Product$1[];
549
+ total: number;
550
+ maximum: any;
551
+ minimal: any;
552
+ searchParams: CatalogSearchParams;
553
+ options: FetchProductsParams<T>;
554
+ };
555
+
556
+ declare class CatalogService<T extends Category$1 = Category$1> {
557
+ private readonly searchContext;
558
+ private readonly helpersService;
559
+ private readonly shop;
560
+ constructor(searchContext: CatalogSearchContext, helpersService: CatalogHelpersService, shop: Shops);
561
+ fetchProducts(options: FetchProductsParams<T>, optionsCache?: {
562
+ cache?: RepositoryCacheOptions;
563
+ }): Promise<FetchProductsResponse>;
564
+ addCustomerToStockNotification(params: StockNotificationParams): Promise<void>;
565
+ private validateRequest;
566
+ private buildSearchParams;
567
+ private buildResponse;
568
+ private buildLimitQuery;
569
+ private hasProfile;
570
+ private hasTerm;
571
+ private hasCategory;
572
+ static ɵfac: i0.ɵɵFactoryDeclaration<CatalogService<any>, never>;
573
+ static ɵprov: i0.ɵɵInjectableDeclaration<CatalogService<any>>;
574
+ }
575
+
576
+ declare class CategoryWithTree extends Category$1 {
577
+ children?: CategoryWithTree[];
578
+ }
579
+
580
+ declare class WishlistService {
581
+ private readonly wishlistRepository;
582
+ private readonly productRepository;
583
+ private readonly logRepository;
584
+ private readonly shop;
585
+ private catalogService;
586
+ private categoryService;
587
+ constructor(wishlistRepository: WishlistRepository, productRepository: ProductRepository, logRepository: LogRepository, shop: Shops);
588
+ initializeServices(catalogServiceFacade: CatalogServiceFacade, categoryServiceFacade: CategoryServiceFacade): void;
589
+ getCatalogService(): CatalogService<_infrab4a_connect.Category>;
590
+ getCategoryService(): CategoryService;
591
+ create({ personId, title, description, published, userFullName, userPhoto, theme, bannerUrl, personType, personIsSubscriber, }: {
592
+ personId: string;
593
+ title: string;
594
+ description: string;
595
+ published: boolean;
596
+ userFullName: string;
597
+ userPhoto?: string;
598
+ theme?: string;
599
+ bannerUrl?: string;
600
+ personType?: PersonType;
601
+ personIsSubscriber?: boolean;
602
+ }): Promise<Wishlist>;
603
+ private buildWishlistData;
604
+ private findExistingWishlistByPersonId;
605
+ private createNewWishlist;
606
+ update({ id, title, description, published, userFullName, userPhoto, theme, bannerUrl, personType, personIsSubscriber, }: {
607
+ id: string;
608
+ title: string;
609
+ description: string;
610
+ published: boolean;
611
+ userFullName: string;
612
+ userPhoto?: string;
613
+ theme?: string;
614
+ bannerUrl?: string;
615
+ personType?: PersonType;
616
+ personIsSubscriber?: boolean;
617
+ }): Promise<Wishlist>;
618
+ delete(wishlistId: string): Promise<void>;
619
+ getWishlistBySlug(slug: string): Promise<Wishlist>;
620
+ getWishlistsByPerson(personId: string): Promise<Wishlist[]>;
621
+ addProduct(wishlistId: string, productId: string): Promise<Wishlist>;
622
+ removeProduct(wishlistId: string, productId: string): Promise<Wishlist>;
623
+ private findById;
624
+ private findProductById;
625
+ private createWishlistLog;
626
+ private createWishlistOperationLog;
627
+ private createWishlistProductLog;
628
+ private getOperationTypeFromWishlistLogType;
629
+ private buildWishlistLogDocument;
630
+ private buildProductLogData;
631
+ static ɵfac: i0.ɵɵFactoryDeclaration<WishlistService, never>;
632
+ static ɵprov: i0.ɵɵInjectableDeclaration<WishlistService>;
633
+ }
634
+
635
+ declare class CouponRepositoriesFacade {
636
+ readonly couponRepository: CouponRepository;
637
+ readonly orderRepository: OrderRepository;
638
+ readonly categoryRepository: CategoryRepository;
639
+ constructor(couponRepository: CouponRepository, orderRepository: OrderRepository, categoryRepository: CategoryRepository);
640
+ static ɵfac: i0.ɵɵFactoryDeclaration<CouponRepositoriesFacade, never>;
641
+ static ɵprov: i0.ɵɵInjectableDeclaration<CouponRepositoriesFacade>;
642
+ }
643
+
644
+ type CheckCouponParams = {
645
+ nickname: string;
646
+ checkoutType: CheckoutTypes;
647
+ checkout: Partial<Checkout>;
648
+ plan: string;
649
+ };
650
+
651
+ declare class CouponService {
652
+ private readonly repositoriesFacade;
653
+ private readonly configurationFacade;
654
+ constructor(repositoriesFacade: CouponRepositoriesFacade, configurationFacade: ConfigurationFacade);
655
+ checkCoupon(params: CheckCouponParams): Observable<Coupon>;
656
+ private couponValidation;
657
+ private couponRulesValidation;
658
+ private validateSubscriptionCoupon;
659
+ private validateEcommerceCoupon;
660
+ private validateUserEligibility;
661
+ private validateUsageLimits;
662
+ private validateFirstOrderLimit;
663
+ private validateCouponUsageLimits;
664
+ private validateProductEligibility;
665
+ private throwMinSubTotalError;
666
+ calcDiscountSubscription(coupon: Coupon, checkout: Partial<CheckoutSubscription>): Observable<number>;
667
+ private hasMinSubTotal;
668
+ private hasProductCategories;
669
+ private coupomUserValidation;
670
+ private getCouponCategoriesId;
671
+ private emailIsFromCollaborator;
672
+ private getLineItensEligebleForDiscount;
673
+ private calcCheckoutSubtotal;
674
+ private getOrdersWithCoupon;
675
+ private getOrdersFromUser;
676
+ private countOrdersWithUser;
677
+ private getCouponUseLimits;
678
+ static ɵfac: i0.ɵɵFactoryDeclaration<CouponService, never>;
679
+ static ɵprov: i0.ɵɵInjectableDeclaration<CouponService>;
680
+ }
681
+
682
+ declare class CheckoutSubscriptionService {
683
+ private readonly checkoutSubscriptionRepository;
684
+ private readonly dataPersistence;
685
+ private readonly couponService;
686
+ constructor(checkoutSubscriptionRepository: CheckoutSubscriptionRepository, dataPersistence: DataPersistence, couponService: CouponService);
687
+ getCheckoutSubscription(checkoutData?: RequiredCheckoutSubscriptionData): Observable<CheckoutSubscription>;
688
+ clearCheckoutSubscriptionFromSession(): Observable<void>;
689
+ checkCoupon(nickname: string, _userEmail: string): Observable<Coupon>;
690
+ calcDiscountSubscription(coupon: Coupon): Observable<number>;
691
+ private createCheckoutSubscription;
692
+ static ɵfac: i0.ɵɵFactoryDeclaration<CheckoutSubscriptionService, never>;
693
+ static ɵprov: i0.ɵɵInjectableDeclaration<CheckoutSubscriptionService>;
694
+ }
695
+
696
+ declare class UtilHelper {
697
+ static createSlug(name: string): string;
698
+ }
699
+
700
+ declare class HomeShopRepositoriesFacade {
701
+ readonly categoryRepository: CategoryRepository;
702
+ readonly homeRepository: HomeRepository;
703
+ readonly productRepository: ProductRepository;
704
+ constructor(categoryRepository: CategoryRepository, homeRepository: HomeRepository, productRepository: ProductRepository);
705
+ static ɵfac: i0.ɵɵFactoryDeclaration<HomeShopRepositoriesFacade, never>;
706
+ static ɵprov: i0.ɵɵInjectableDeclaration<HomeShopRepositoriesFacade>;
707
+ }
708
+
709
+ type BannerType = 'brand' | 'buyToWin' | 'block' | 'blog';
710
+ declare class HomeShopService {
711
+ private readonly repositoriesFacade;
712
+ private readonly configurationFacade;
713
+ private homeConfiguration;
714
+ private get homeId();
715
+ constructor(repositoriesFacade: HomeShopRepositoriesFacade, configurationFacade: ConfigurationFacade);
716
+ getHomeData(): Observable<Home>;
717
+ getBanners(type: BannerType): Observable<Banner[]>;
718
+ getMinValueForFreeShipping(): Observable<number>;
719
+ private getDiscoverProducts;
720
+ private getFeaturedProducts;
721
+ private getVerticalProducts;
722
+ private getHomeConfiguration;
723
+ private saveHomeData;
724
+ private buildCategoryGroupWithRequiredData;
725
+ private get gender();
726
+ static ɵfac: i0.ɵɵFactoryDeclaration<HomeShopService, never>;
727
+ static ɵprov: i0.ɵɵInjectableDeclaration<HomeShopService>;
728
+ }
729
+
730
+ declare class OrderProductReviewService {
731
+ private readonly orderRepository;
732
+ private readonly productReviewRepository;
733
+ private readonly variantRepository;
734
+ constructor(orderRepository: OrderFirestoreRepository, productReviewRepository: ProductReviewRepository, variantRepository: VariantRepository);
735
+ getPendingReviewsByEmail(email: string): Promise<PendingProductReview[]>;
736
+ private getOrdersByEmail;
737
+ private getProductReview;
738
+ private buildProductReview;
739
+ createReview(review: ProductReviewCreate): Promise<ProductReview>;
740
+ static ɵfac: i0.ɵɵFactoryDeclaration<OrderProductReviewService, never>;
741
+ static ɵprov: i0.ɵɵInjectableDeclaration<OrderProductReviewService>;
742
+ }
743
+
744
+ declare class OrderService {
745
+ private readonly angularFirestore;
746
+ private readonly orderRepository;
747
+ orderSubject: Subject<Order>;
748
+ constructor(angularFirestore: Firestore, orderRepository: OrderFirestoreRepository);
749
+ getOrder(id: string): Subject<Order>;
750
+ static ɵfac: i0.ɵɵFactoryDeclaration<OrderService, never>;
751
+ static ɵprov: i0.ɵɵInjectableDeclaration<OrderService>;
752
+ }
753
+
754
+ export { AngularConnectModule, AngularFirebaseAuthModule, AngularFirestoreModule, AngularHasuraGraphQLModule, AuthService, CartService, CatalogService, CategoryService, CategoryWithTree, CheckoutService, CheckoutSubscriptionService, CookieDataPersistence, CouponService, HomeShopService, NewCategoryStructureAdapter, OldCategoryStructureAdapter, OrderProductReviewService, OrderService, ProductSorts, UtilHelper, WishlistService };
755
+ export type { BuildResponseParams, Cart, CategoryStructureAdapter, DataPersistence, FetchProductsMainParams, FetchProductsOptions, FetchProductsParams, FetchProductsResponse, FirestoreOptions, HasuraGraphQLOptions, ProductSort, StockNotificationParams };