import { SequelizeModel } from "@golemio/core/dist/output-gateway";
import { CachedParkingSourcesRepository } from "../../../helpers/data-access/CachedParkingSourcesRepository";
export interface IGetTariffsOptions {
    source?: string;
}
export interface IParkingsTariffCharge {
    charge: string;
    charge_type: string | null;
    charge_order_index: number;
    charge_interval: number | null;
    max_iterations_of_charge: number | null;
    min_iterations_of_charge: number | null;
    start_time_of_period: string | null;
    end_time_of_period: string | null;
}
export interface IParkingsTariffDescription {
    tariff_id: string;
    source: string;
    last_updated: string;
    payment_mode: string;
    payment_additional_description: string | null;
    free_of_charge: boolean;
    url_link_address: string | null;
    charge_band_name: string;
    accepts_payment_card: boolean | null;
    accepts_cash: boolean | null;
    accepts_mobile_payment: boolean | null;
    accepts_litacka: boolean | null;
    charge_currency: string;
    allowed_vehicle_type: string | null;
    allowed_fuel_type: string | null;
    valid_from: string | null;
    valid_to: string | null;
}
export interface IParkingsTariff extends IParkingsTariffCharge, IParkingsTariffDescription {
}
export declare class V2ParkingTariffsRepository extends SequelizeModel {
    private parkingSourcesRepository;
    constructor(parkingSourcesRepository: CachedParkingSourcesRepository);
    GetAll: (options?: IGetTariffsOptions) => Promise<IParkingsTariff[]>;
    GetOne: (tariffId: string) => Promise<IParkingsTariff[]>;
}
