import { HttpClient } from '@angular/common/http';
import { BaseApiTemplateService, ApiVisa, PagingResponseModel, ApiResponseModel, Pagination } from '../../shared';
import { MembershipPointsCurrentBalanceDto, MembershipPointsTxnContainerModel, MembershipPointsTxnLineContainerModel } from '../../../../../../models/aggregates/crm/membership-points-txn';
import { Observable } from 'rxjs';
import { MembershipPointsTxnQueryCriteriaClass } from '../../../criteria/membership-points-txn-query-criteria.model';
export declare class MembershipPointsTxnService extends BaseApiTemplateService<MembershipPointsTxnContainerModel> {
    static readonly MEMBERSHIP_POINTS_TXN_PATH = "membership-points-txn/";
    readonly url: string;
    constructor(http: HttpClient);
    postToLinesDirect(visa: ApiVisa, body: MembershipPointsTxnLineContainerModel): Observable<PagingResponseModel<MembershipPointsTxnLineContainerModel>>;
    postToTxnLinesDirect(visa: ApiVisa, body: MembershipPointsTxnLineContainerModel): Observable<PagingResponseModel<MembershipPointsTxnLineContainerModel>>;
    getByCriteriaLines(pagination: Pagination, visa: ApiVisa): Observable<PagingResponseModel<MembershipPointsTxnLineContainerModel>>;
    getByCriteriaLinesLoginEntity(pagination: Pagination, visa: ApiVisa): Observable<PagingResponseModel<MembershipPointsTxnLineContainerModel>>;
    getByGuidLines(guid: string, visa: ApiVisa): Observable<ApiResponseModel<MembershipPointsTxnLineContainerModel>>;
    getMembershipPointsTxnByCriteria(visa: ApiVisa, criteria?: MembershipPointsTxnQueryCriteriaClass): Observable<PagingResponseModel<MembershipPointsTxnContainerModel>>;
    getBalanceByCardNumber(cardNo: string, apiVisa: ApiVisa): Observable<Object>;
    getBalanceByCardNumberLogin(cardNo: string, apiVisa: ApiVisa): Observable<ApiResponseModel<MembershipPointsCurrentBalanceDto>>;
    getBalanceCurrencyByCardNumberLogin(cardNo: string, apiVisa: ApiVisa): Observable<ApiResponseModel<MembershipPointsCurrentBalanceDto>>;
    getMembershipPointCurrentBalanceByPointCurrency(cardNo: string, pointCurrency: string, apiVisa: ApiVisa): Observable<ApiResponseModel<string>>;
    getMembershipPointCurrentBalance(cardNo: string, apiVisa: ApiVisa): Observable<ApiResponseModel<MembershipPointsCurrentBalanceDto>>;
    getMembershipPointCurrentBalanceLoginEntity(cardNo: string, apiVisa: ApiVisa): Observable<ApiResponseModel<MembershipPointsCurrentBalanceDto>>;
}
