import { RopidGTFSStopsModel } from "../../ropid-gtfs";
import { JISInfotextsModel } from "../../../schema-definitions/jis/models/JISInfotextsModel";
import { IJISInfotext } from "../../../schema-definitions/jis/models/interfaces";
import { ILogger } from "@golemio/core/dist/helpers";
import { IDatabaseConnector } from "@golemio/core/dist/helpers/data-access/postgres/IDatabaseConnector";
import { AbstractValidatableRepository } from "@golemio/core/dist/helpers/data-access/postgres/repositories/AbstractValidatableRepository";
import { JSONSchemaValidator } from "@golemio/core/dist/shared/golemio-validator";
import { Transaction } from "@golemio/core/dist/shared/sequelize";
import { JISInfotextsRopidGTFSStopsRepository } from "./JISInfotextsRopidGTFSStopsRepository";
type RepositoryOptions = {
    transaction?: Transaction;
};
export declare class JISInfotextsRepository extends AbstractValidatableRepository {
    private logger;
    private infotextStopRepository;
    private gtfsStopRepository;
    validator: JSONSchemaValidator;
    schema: string;
    tableName: string;
    private sequelizeModel;
    constructor(connector: IDatabaseConnector, logger: ILogger, infotextStopRepository: JISInfotextsRopidGTFSStopsRepository, gtfsStopRepository: RopidGTFSStopsModel);
    /**
     * Refresh all data from VYMI and delete old data
     *
     * @param data The data to be upserted
     * @param options Options for the operation
     */
    refreshData(data: IJISInfotext[], options?: RepositoryOptions): Promise<JISInfotextsModel[]>;
    private getUpdateAttributes;
    /**
     * @param options
     * @returns The number of deleted items
     */
    deleteAll(options?: RepositoryOptions): Promise<number>;
    findAll(): Promise<JISInfotextsModel[]>;
}
export {};
