import BaseMapping, { ICfg } from './base';
import { RatePriceDto } from '../dto';
interface IRatePriceBaseMapping {
    readonly rule: RatePriceDto;
}
export declare abstract class RatePriceBaseMapping<T extends RatePriceDto> extends BaseMapping<T> implements IRatePriceBaseMapping {
    constructor(config: ICfg);
    abstract get rule(): T;
    /**
     * 执行多个价格匹配逻辑函数
     *
     * @param {any[]} rateprices 待匹配数据
     * @param {boolean} [withRawData=true] 是否保留元数据
     * @param {*} [parameter] mapping 函数执行时的额外参数
     * @returns {Promise<RatePlanDto[]>}
     * @memberof RatePlanBaseMapping
     */
    doBatchMapping(rateprices: any[], withRawData?: boolean, parameter?: any): Promise<T[]>;
    /**
     * 执行单个价格匹配逻辑函数
     *
     * @param {*} rateprice 待匹配数据
     * @param {boolean} [withRawData=true] 是否保留原数据
     * @param {*} [parameter] mapping 函数执行时的额外参数
     * @returns {Promise<RatePlanDto>}
     * @memberof RatePlanBaseMapping
     */
    doMapping(rateprice: any, withRawData?: boolean, parameter?: any): Promise<T>;
}
export {};
