import { CartService } from './cart.service';
import { CartItem } from '../classes/cart-item';
/**
 * An implementation of the CartService using an in-memory array to store items
 * @order 2
 */
export declare class MemoryCartService<T extends CartItem> extends CartService<T> {
    protected _items: T[];
    protected _taxRate: number;
    protected _shipping: number;
    protected _addItem(item: T): void;
    protected _removeItem(id: any): void;
    getItem(id: any): T;
    getItems(): T[];
    itemCount(): number;
    entries(): number;
    addItem(item: T): void;
    removeItem(id: any): void;
    cost(): number;
    clear(): void;
    getShipping(): number;
    setShipping(shipping: number): void;
    getTaxRate(): number;
    setTaxRate(taxRate: number): void;
    isEmpty(): boolean;
}
