import { OnInit } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
import { Subscription } from 'rxjs';
import { ComponentHelper } from '../../classes/component-helper';
import { Filter } from '../../classes/filters/Filter';
import { Constants } from '../../core.consts';
import { FilterType } from '../../interfaces/filter';
import { ParamsProductsWithUniqueVariant } from '../../interfaces/paramsInterfaces/paramsProductsWithUniqueVariant';
import { Product } from '../../interfaces/product';
import { AnalyticsService } from '../../services/analytics.service';
import { AuthService } from '../../services/auth.service';
import { CartService } from '../../services/cart.service';
import { OptionsService } from '../../services/options.service';
import { ParametersService } from '../../services/parameters.service';
import { ProductsService } from '../../services/products/products.service';
export declare class CollectionEcComponent extends ComponentHelper implements OnInit {
    productsService: ProductsService;
    protected paramsSrv: ParametersService;
    protected activeRoute: ActivatedRoute;
    protected optionsService: OptionsService;
    authService: AuthService;
    private analyticsService;
    cartService: CartService;
    consts: Constants;
    filters: Filter[];
    filters_top: Filter[];
    products: Product[];
    finished: boolean;
    protected suscripcion: Subscription;
    loading: boolean;
    breadcrumb: string[];
    isCollection: boolean;
    params: any;
    type: any;
    value: any;
    productsWithUniqueVariant: boolean;
    optionsFilters: FilterType[];
    constructor(productsService: ProductsService, paramsSrv: ParametersService, activeRoute: ActivatedRoute, optionsService: OptionsService, authService: AuthService, analyticsService: AnalyticsService, cartService: CartService, consts: Constants);
    ngOnInit(): void;
    getProductsAndSubscribe(): void;
    getSpecificFilters: (filters: Filter[], types: FilterType[]) => Filter[];
    onScroll(): void;
    areProducts: () => boolean;
    isWaiting: () => boolean;
    setFinished: () => boolean;
    changeFilter: (e: any) => void;
    addAllProductosToCart: (products?: any) => void;
    getObjectWithVariant: () => ParamsProductsWithUniqueVariant;
}
