import { OnChanges, SimpleChanges } from '@angular/core';
import { FormControl } from '@angular/forms';
import { OrderEntry, PromotionLocation } from '@spartacus/core';
import { ICON_TYPE } from '../../../misc/icon/icon.model';
import { CartOutlets } from '../../cart-outlets.model';
import { CartItemContextSource } from './model/cart-item-context-source.model';
import * as i0 from "@angular/core";
export interface CartItemComponentOptions {
    isSaveForLater?: boolean;
    optionalBtn?: any;
}
export declare class CartItemComponent implements OnChanges {
    protected cartItemContextSource: CartItemContextSource;
    compact: boolean;
    item: OrderEntry;
    readonly: boolean;
    quantityControl: FormControl;
    promotionLocation: PromotionLocation;
    options: CartItemComponentOptions;
    iconTypes: typeof ICON_TYPE;
    readonly CartOutlets: typeof CartOutlets;
    constructor(cartItemContextSource: CartItemContextSource);
    ngOnChanges(changes?: SimpleChanges): void;
    isProductOutOfStock(product: any): boolean;
    removeItem(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<CartItemComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<CartItemComponent, "cx-cart-item", never, { "compact": "compact"; "item": "item"; "readonly": "readonly"; "quantityControl": "quantityControl"; "promotionLocation": "promotionLocation"; "options": "options"; }, {}, never, never>;
}
