import { HttpClient } from '@angular/common/http';
import { Observable } from 'rxjs';
import { Environment } from '../ngx-services.models';
import { QueryParams } from './models/api.models';
import { ExternalShipmentAddressesIn, ExternalShipmentAddressesOut, ExternalShipmentFileOut, ExternalShipmentHistoriesOut, ExternalShipmentStatusOut } from './models/api-e-tools-auto-billing.types';
import * as i0 from "@angular/core";
export declare class ApiEToolsAutoBillingService {
    private environments;
    private http;
    constructor(environments: Environment, http: HttpClient);
    /**
     * Retrieves the URL for the shipments API from the environment configurations.
     *
     * @return {string} The URL of the shipments API.
     */
    get url(): string;
    /**
     * Updates external shipment address details for the given address ID.
     *
     * @param {Object} params - The parameters for the API request.
     * @param {string} params.id - The unique identifier of the address to update.
     * @param {Object} params.body - The payload containing updated address details.
     * @return {Observable<ExternalShipmentAddressesOut>} An observable containing the updated external shipment address information.
     */
    patchExternalShipmentAddresses({ id, ...body }: ExternalShipmentAddressesIn): Observable<ExternalShipmentAddressesOut>;
    /**
     * Fetches the external shipment file by its identifier.
     *
     * @param {number} fileId - The unique identifier of the external shipment file to be retrieved.
     * @return {Observable<ExternalShipmentFileOut>} An observable containing the external shipment file data.
     */
    getExternalShipmentFile(fileId: number): Observable<ExternalShipmentFileOut>;
    /**
     * Retrieves the history entries for a specific external shipment.
     *
     * @param {number} id - The ID of the external shipment to retrieve history for.
     * @return {Observable<ExternalShipmentHistoriesOut>} An observable containing the external shipment history entries.
     */
    getExternalShipmentHistories(id: number): Observable<ExternalShipmentHistoriesOut>;
    /**
     * Retrieves the list of external shipment statuses
     *
     * @param {QueryParams} params - The query parameters used to fetch the external shipment statuses.
     * @return {Observable<ExternalShipmentStatusOut>} An observable that emits the external shipment statuses data.
     */
    getExternalShipmentStatuses(params: QueryParams): Observable<ExternalShipmentStatusOut>;
    static ɵfac: i0.ɵɵFactoryDeclaration<ApiEToolsAutoBillingService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<ApiEToolsAutoBillingService>;
}
