import { ObjectBase } from '@tomei/general';
import { ITomeiPriceHistoryFindAllAttr, ITomeiPriceHistoryAttr } from '../../interfaces/price-tomei-price-history-attr.interface';
import { LoginUser } from '@tomei/sso';
import { IFeedHistoryAttr } from '../../interfaces';
import { NonSourceFeedName } from '../../enum/feed.enum';
export declare class TomeiPriceHistory extends ObjectBase implements ITomeiPriceHistoryAttr {
    ObjectId: string;
    ObjectName: string;
    ObjectType: string;
    TableName: string;
    FeedHistoryId: string;
    FeedName: NonSourceFeedName;
    DateTime: Date;
    AdjustBuyPercentage: number;
    AdjustSellPercentage: number;
    TomeiBuyPrice: number;
    TomeiSellPrice: number;
    AdjustedById: string;
    Currency: string;
    AdjustedDateTime: Date;
    IsManualPriceActivatedYN: string;
    BuyLabourCharges: number;
    SellLabourCharges: number;
    get TomeiPriceHistoryId(): string;
    set TomeiPriceHistoryId(value: string);
    private static _Repo;
    private constructor();
    static init(dbTransaction?: any, tomeiPriceHistoryId?: string): Promise<TomeiPriceHistory>;
    saveTomeiPrice(feedName: NonSourceFeedName, feedHistory: IFeedHistoryAttr, loginUser?: LoginUser, adjustmentPercentage?: {
        adjustBuyPercentage: number;
        adjustSellPercentage: number;
        buyLabourCharges: number;
        sellLabourCharges: number;
    }, manualPrice?: {
        buyPrice: number;
        sellPrice: number;
    }, dbTransaction?: any): Promise<TomeiPriceHistory>;
    static getLatestPrice(feedName: NonSourceFeedName, currency: string, timestamp?: Date, dbTransaction?: any): Promise<ITomeiPriceHistoryAttr>;
    static findAll(page: number, row: number, feedName: NonSourceFeedName, search?: {
        DateTime: {
            startDate: Date;
            endDate: Date;
            withManualHistory?: boolean;
            withCutOffHistory?: boolean;
        };
    }, dbTransaction?: any): Promise<{
        rows: ITomeiPriceHistoryFindAllAttr[];
        count: number;
    }>;
}
