import { HttpClient } from '@angular/common/http'; import { BehaviorSubject, Observable } from 'rxjs'; import { Filter, Taxon } from '../classes/filter'; import { Params, Router } from '@angular/router'; import { LanguageService } from './language.service'; import { Product } from '../classes/product'; import { TaxonService } from './taxon.service'; import { Categories } from '../classes/Categories'; import { Meta } from '@angular/platform-browser'; import { TranslatePipe } from '../pipes/translate.pipe'; import { AuthService } from './auth.service'; import { ConfService } from './conf.service'; import * as i0 from "@angular/core"; export declare class CollectionService { private _http; private _router; private languageService; private auth; private confService; private taxonService; private meta; private translatePipe; pages_count: BehaviorSubject; productsCount: BehaviorSubject; filter: BehaviorSubject; defaultLimit: number; params: Params; params$: BehaviorSubject; taxons: Taxon[]; id: number; storeid: import("rxjs").Subscription; stores: { artisticafashion: number; }; homePageItems: BehaviorSubject; loading: boolean; gridClassSubject: BehaviorSubject; hasViewMoreBtn: BehaviorSubject; private array; private primitive; constructor(_http: HttpClient, _router: Router, languageService: LanguageService, auth: AuthService, confService: ConfService, taxonService: TaxonService, meta: Meta, translatePipe: TranslatePipe); static implode(options: string[]): string; static explode(options: string): string[]; getCollection(params: any, listenToChanges?: boolean): Observable; getCollectionForAutocomplete(params: any): Observable; changeTaxon(taxon: string, addRemove: boolean): void; /** * @inputs * type: attributes or options * option: attributes/options name * value: attributes/options value * addRemove: add or remove this value to/from the url * * @output * void * * @functionality * add/remove the select value to the url and reroute to it so it get executed * */ changeFilter(type: string, option: string, value: string, addRemove: boolean): void; setParams(params: Params): void; changeX(x: string, value: string | boolean): void; changeSort(sort: any, order: any): void; filterOptions(product: Product): Product; mapOptions(newOptions: any[], oldOptions: any[]): any[]; filterOptionsWithoutConnect(product: Product): Product; checkAvailiableVariables(product: Product, code: any, Optionindex: any): Product; is_parent(parentCode: string, childCode: string): boolean; getTaxon(code: string, taxons: any): Taxon; getTaxonFrom(code: string, taxons: Taxon[]): Taxon; private clearTaxonParents; private remove; getHomePageProducts(params?: any): Observable; getHomeProducts(params?: any): Observable; loadFromApi(params?: any): Observable; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }