import { Environment } from '../ngx-services.models';
import { HttpClient } from '@angular/common/http';
import { QueryParams } from './models/api.models';
import { Observable } from 'rxjs';
import { DepartmentsOut, EconomicActivitiesOut, EstablishmentTypesOut, MunicipalitiesOut, PersonTypesOut } from './models/api-billing-sv.types';
import * as i0 from "@angular/core";
export declare class ApiBillingSvService {
    private environments;
    private http;
    constructor(environments: Environment, http: HttpClient);
    /**
     * Retrieves the URL for the billing API.
     * If the URL is not defined in the environments configuration, returns an empty string.
     *
     * @return {string} The billing API URL or an empty string if not set.
     */
    get url(): string;
    /**
     * Fetches the list of economic activities based on the provided query parameters.
     *
     * @param {QueryParams} params - The query parameters used to filter the economic activities.
     * @return {Observable<EconomicActivitiesOut>} An observable that emits the list of economic activities.
     */
    getEconomicActivities(params: QueryParams): Observable<EconomicActivitiesOut>;
    /**
     * Retrieves the list of person types based on given query parameters.
     *
     * @param {QueryParams} params - The query parameters used to filter the person types.
     * @return {Observable<PersonTypesOut>} An observable that emits a list of person types.
     */
    getPersonTypes(params: QueryParams): Observable<PersonTypesOut>;
    /**
     * Fetches the list of establishment types.
     *
     * @param {QueryParams} params The query parameters to be sent with the HTTP request.
     * @return {Observable<EstablishmentTypesOut>} An observable that emits the establishment types data.
     */
    getEstablishmentTypes(params: QueryParams): Observable<EstablishmentTypesOut>;
    /**
     * Fetches the list of departments based on the provided query parameters.
     *
     * @param {QueryParams} params - The query parameters to filter or modify the departments fetch request.
     * @return {Observable<DepartmentsOut>} An observable emitting the list of departments.
     */
    getDepartments(params: QueryParams): Observable<DepartmentsOut>;
    /**
     * Retrieves a list of municipalities based on the provided query parameters.
     *
     * @param {QueryParams} params - The query parameters used to filter the municipalities.
     * @return {Observable<MunicipalitiesOut>} An observable that emits the retrieved municipalities data.
     */
    getMunicipalities(params: QueryParams): Observable<MunicipalitiesOut>;
    static ɵfac: i0.ɵɵFactoryDeclaration<ApiBillingSvService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<ApiBillingSvService>;
}
