import { HttpClient } from '@angular/common/http';
import { Observable } from 'rxjs';
import { GenericDocContainerModel, GenericDocHdrLineOpenQueueContainerModel, GenericDocHdrLineOpenQueueImportContainerModel, GenericDocumentHdrLineContainerModel } from '../../../../../../models/aggregates/generic_doc';
import { ApiResponseModel, ApiVisa, BasicApiResponseModel, Pagination, PagingResponseModel } from '../../shared';
import { GenericDocSearchCriteriaDtoModel, GenericDocumentCloneDTO, ReturnSalesInvoiceDtoModel } from '../../../data-transfer-objects';
import { BaseApiPublicLoginTemplateService } from '../../shared/base-api-public-login-template.service';
export declare class BaseGenDocTypeService extends BaseApiPublicLoginTemplateService<GenericDocContainerModel, GenericDocContainerModel, GenericDocContainerModel> {
    docType: string;
    constructor(http: HttpClient, docType: string);
    getGenericDocumentHdrLineByCriteria(pagination: Pagination, visa: ApiVisa): Observable<PagingResponseModel<GenericDocumentHdrLineContainerModel>>;
    getByCustomSnapshotLinesQuery(dtoObject: GenericDocSearchCriteriaDtoModel, visa: ApiVisa): Observable<ApiResponseModel<any>>;
    getByCustomSnapshotLinesCountQuery(dtoObject: GenericDocSearchCriteriaDtoModel, visa: ApiVisa): Observable<ApiResponseModel<any>>;
    getGenericDocHdrLineLinkByCriteria(pagination: Pagination, visa: ApiVisa): Observable<PagingResponseModel<GenericDocumentHdrLineContainerModel>>;
    getGenericDocHdrLineLinkQueueByCriteria(pagination: Pagination, visa: ApiVisa): Observable<PagingResponseModel<GenericDocHdrLineOpenQueueContainerModel>>;
    getGenericDocHdrLineLinkQueueBySnapshot(dtoObject: any, visa: ApiVisa): Observable<ApiResponseModel<any>>;
    getGenericDocHdrLinesLinkQueueBySnapshot(dtoObject: any, visa: ApiVisa): Observable<ApiResponseModel<any>>;
    getGenericDocHdrLineLinkImportByCriteria(pagination: Pagination, visa: ApiVisa): Observable<PagingResponseModel<GenericDocHdrLineOpenQueueImportContainerModel>>;
    getGenericDocHdrLineLinkImportByCriteriaBySnapshot(dtoObject: any, visa: ApiVisa): Observable<ApiResponseModel<any>>;
    voidGenericDocument(dtoObject: Object, apiVisa: ApiVisa, guid: string): Observable<ApiResponseModel<GenericDocContainerModel>>;
    discardGenericDocument(apiVisa: ApiVisa, guid: string): Observable<ApiResponseModel<GenericDocContainerModel>>;
    draftGenericDocument(apiVisa: ApiVisa, guid: string): Observable<ApiResponseModel<any>>;
    createTemp(dtoObject: any, visa: ApiVisa): Observable<BasicApiResponseModel<GenericDocContainerModel>>;
    updateAutoFinal(genericDocumentContainer: any, validateStockBalance: boolean, validateSNForSignumZero: boolean, visa: ApiVisa): Observable<ApiResponseModel<any>>;
    updateSettlementMethods(genericDocumentContainer: any, visa: ApiVisa): Observable<ApiResponseModel<any>>;
    cloneDocument(dto: GenericDocumentCloneDTO, visa: ApiVisa): Observable<BasicApiResponseModel<GenericDocumentCloneDTO>>;
    getOutstandingItems(dto: any, visa: ApiVisa): Observable<ApiResponseModel<ReturnSalesInvoiceDtoModel>>;
    getOpenCreditGenDocHdrGuids(docCcy: string, entityHdrGuid: string, visa: ApiVisa): Observable<BasicApiResponseModel<string[]>>;
    getGenDocHdrGuidsByGenDocPgwQueryDto(genDocArapPgwQueryDto: any, entityHdrGuid: string, visa: ApiVisa): Observable<BasicApiResponseModel<string[]>>;
    getGrossProfit(dto: any, visa: ApiVisa): Observable<ApiResponseModel<ReturnSalesInvoiceDtoModel>>;
}
