import { HttpClient } from '@angular/common/http';
import { CheckoutDeliveryAdapter } from '@spartacus/checkout/core';
import { Address, ConverterService, DeliveryMode, OccEndpointsService } from '@spartacus/core';
import { Observable } from 'rxjs';
import * as i0 from "@angular/core";
export declare class OccCheckoutDeliveryAdapter implements CheckoutDeliveryAdapter {
    protected http: HttpClient;
    protected occEndpoints: OccEndpointsService;
    protected converter: ConverterService;
    constructor(http: HttpClient, occEndpoints: OccEndpointsService, converter: ConverterService);
    protected getCreateDeliveryAddressEndpoint(userId: string, cartId: string): string;
    protected getSetDeliveryAddressEndpoint(userId: string, cartId: string, addressId?: string): string;
    protected getDeliveryModeEndpoint(userId: string, cartId: string): string;
    protected getSetDeliveryModeEndpoint(userId: string, cartId: string, deliveryModeId?: string): string;
    protected getDeliveryModesEndpoint(userId: string, cartId: string): string;
    createAddress(userId: string, cartId: string, address: Address): Observable<Address>;
    setAddress(userId: string, cartId: string, addressId: string): Observable<any>;
    setMode(userId: string, cartId: string, deliveryModeId: string): Observable<any>;
    getMode(userId: string, cartId: string): Observable<any>;
    getSupportedModes(userId: string, cartId: string): Observable<DeliveryMode[]>;
    static ɵfac: i0.ɵɵFactoryDeclaration<OccCheckoutDeliveryAdapter, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<OccCheckoutDeliveryAdapter>;
}
