import BaseMapping, { ICfg } from './base';
import { HotelDto } from '../dto';
interface IHotelBaseHotelMapping {
    readonly rule: HotelDto;
}
export declare abstract class HotelBaseMapping<T extends HotelDto> extends BaseMapping<T> implements IHotelBaseHotelMapping {
    constructor(config: ICfg);
    abstract get rule(): T;
    /**
     * 执行多个酒店匹配逻辑函数
     *
     * @param {*} hotels
     * @param {boolean} [withRawData=true]
     * @returns {Promise<HotelDto[]>}
     * @memberof BaseHotelMapping
     */
    doBatchMapping(hotels: any[], withRawData?: boolean): Promise<T[]>;
    /**
     * 执行单个酒店匹配逻辑函数
     *
     * @param {*} hotel
     * @param {boolean} [withRawData=true]
     * @returns {Promise<HotelDto>}
     * @memberof BaseHotelMapping
     */
    doMapping(hotel: any, withRawData?: boolean): Promise<T>;
}
export {};
