import { Observable } from 'rxjs';
import { UserIdService } from '../../auth/user-auth/facade/user-id.service';
import { CartModificationList } from '../../model/cart.model';
import { Command, CommandService } from '../../util/command-query/command.service';
import { CartValidationConnector } from '../connectors/validation/cart-validation.connector';
import { ActiveCartService } from './active-cart.service';
import * as i0 from "@angular/core";
export declare class CartValidationService {
    protected cartValidationConnector: CartValidationConnector;
    protected command: CommandService;
    protected userIdService: UserIdService;
    protected activeCartService: ActiveCartService;
    protected validateCartCommand: Command<void, CartModificationList>;
    constructor(cartValidationConnector: CartValidationConnector, command: CommandService, userIdService: UserIdService, activeCartService: ActiveCartService);
    /**
     * Returns cart modification list.
     *
     * @param cartId
     * @param userId
     */
    validateCart(): Observable<CartModificationList>;
    static ɵfac: i0.ɵɵFactoryDeclaration<CartValidationService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<CartValidationService>;
}
