import { OrderedItems } from '../ecommerce/styles/OrderedItems.modal';
import { User } from '../ecommerce/styles/user.modal';
import { EventsService } from './events.service';
import { CookieService } from 'ngx-cookie-service';
import { RestService } from './rest.service';
import { Router } from '@angular/router';
import { StorageLike } from '../services/storage-like';
import * as i0 from "@angular/core";
export declare class StorageServiceService {
    private readonly eventService;
    private readonly cookieService;
    private readonly restService;
    private storage;
    private router;
    private platformId;
    private dbReady;
    constructor(eventService: EventsService, cookieService: CookieService, restService: RestService, storage: StorageLike, router: Router, platformId: Object);
    private totalCartItems;
    getCartTotalAmount: number;
    get getTotalCartItems(): number;
    private totalWishlistItems;
    get getTotalWishlistItems(): number;
    calculateCartTotals(): void;
    calculateWishlistTotals(): void;
    databaseName: string;
    databaseVersion: number;
    cartCollectionName: string;
    favouriteCollectionName: string;
    trialCartCollectionName: string;
    userCollectionName: string;
    database: IDBDatabase;
    cartCollectionRef: IDBObjectStore | null;
    favouriteCollectionRef: IDBObjectStore | null;
    userCollectionRef: IDBObjectStore | null;
    trialCartCollectionRef: IDBObjectStore | null;
    createDataBase(): Promise<void>;
    setToken(token: any): void;
    getToken(): any;
    setReferralDetails(details: any): void;
    getReferralDetails(): any;
    updateAllData(): void;
    mergeAllItems(unSyncedItem: any[], syncedItem: any[]): any[];
    getUserCart(): Promise<IDBRequest<OrderedItems[]>>;
    addProductToCart(product: OrderedItems): IDBRequest<IDBValidKey>;
    addAllProductToWishlist(products: OrderedItems[]): IDBTransaction;
    addAllProductsToCart(products: OrderedItems[]): IDBTransaction;
    removeProductFromCart(productId: string): IDBRequest<undefined>;
    getProductFromCart(productId: string): Promise<IDBRequest<any>>;
    getUserWhishlist(): Promise<IDBRequest<OrderedItems[]>>;
    getTrialCart(): Promise<IDBRequest<OrderedItems[]>>;
    addProductToWishlist(product: OrderedItems): IDBRequest<IDBValidKey>;
    addProductToTrial(product: OrderedItems): IDBRequest<IDBValidKey>;
    removeProductFromWishlist(productId: string): IDBRequest<undefined>;
    clearUserCart(): IDBRequest<undefined>;
    clearTrialCart(): IDBRequest<undefined>;
    removeProductFromTrialCart(productId: string): IDBRequest<undefined>;
    setUser(user: User): User;
    getUser(): User | null;
    static ɵfac: i0.ɵɵFactoryDeclaration<StorageServiceService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<StorageServiceService>;
}
