import { ConfigurationAttributeGroup, ConfigurationFeatureGroup, ConfigurationCategory, ConfigurationSearchConfiguration, ConfigurationSearchCategory } from '../domain'; import { CacheService } from '@jollose/core-cache'; import { EcomManagementAttributeHttpService } from './EcomManagementAttributeHttp.service'; import { EcomManagementFeatureHttpService } from './EcomManagementFeatureHttp.service'; import { EcomManagementCategoryHttpService } from './EcomManagementCategoryHttp.service'; import { EcomManagementSearchHttpService } from './EcomManagementSearchHttp.service'; type EcomManagementCatalogConfiguration = { attributeGroupById?: { [attributeGroupId: string]: ConfigurationAttributeGroup; }; featureGroupById?: { [featureGroupId: string]: ConfigurationFeatureGroup; }; categoryById?: { [categoryId: string]: ConfigurationCategory; }; searchCategoryById?: { [categoryId: string]: ConfigurationSearchCategory; }; searchConfigurationById?: { [configurationId: string]: ConfigurationSearchConfiguration; }; categoryIdsByProductId?: { [productId: string]: string[]; }; searchFacets?: { byConfigurationId?: { [configurationId: string]: string[]; }; byCategoryId?: { [categoryId: string]: string[]; }; }; searchConfigurationsByVerticalId?: { [configurationId: string]: string[]; }; }; export declare abstract class EcomManagementCatalogConfigurationLoaderService { private readonly cacheService; private readonly ecomManagementAttributeHttpService; private readonly ecomManagementFeatureHttpService; private readonly ecomManagementCategoryHttpService; private readonly ecomManagementSearchHttpService; private readonly cacheKey; private readonly folderPath; private readonly filePath; private readonly updateDiffTimeMs; protected configuration: EcomManagementCatalogConfiguration; protected scopes: { category?: true; featureGroup?: true; attributeGroup?: true; searchCategory?: true; searchConfiguration?: true; searchFacets: true; }; constructor(cacheService: CacheService, ecomManagementAttributeHttpService: EcomManagementAttributeHttpService, ecomManagementFeatureHttpService: EcomManagementFeatureHttpService, ecomManagementCategoryHttpService: EcomManagementCategoryHttpService, ecomManagementSearchHttpService: EcomManagementSearchHttpService); onAppLoaded(): Promise; private loadFallback; load(): Promise; private setFallback; private getConfiguration; private prepareSearchConfigurations; private prepareSearchCategories; private prepareCategories; private prepareAttributes; private prepareFeatures; } export {};