import { HttpClient } from '@angular/common/http';
import { ODataService } from '@mgrcto/angular-odata-v401';
import { TccET_APPLI } from '../../models/applications.model';
import { TccODataSettings } from '../../tccodatasettings.token';
import { TccAuthService } from '../tcc-auth/tcc-auth.service';
import { Observable } from 'rxjs';
import { TccODataServiceFactory } from '../../factories/tcc-odata-service/tcc-odata-service.factory';
import { TccET_IAM } from '../../models/iam.model';
import { TccOdataHelperService } from '../tcc-odata-helper/tcc-odata-helper.service';
import { TccET_C4 } from '../../models/c4.model';
import { TccODataService } from '../tcc-odata/tcc-odata.service';
import { TccET_DEV } from '../../models/dev.model';
import { ProcessingStatistics, TccGeneratedViewblob, TccNoteState, TccSimpleNote } from '../../models/shared.model';
import { TccET_Log } from '../../models/log.model';
import { TccET_BPI } from '../../models/bpi.model';
export declare class TccOdataFunctionsService {
    private factory;
    private helper;
    private http;
    private authService;
    private odatasettings;
    private baseurl;
    private Headers;
    constructor(factory: TccODataServiceFactory, helper: TccOdataHelperService, http: HttpClient, authService: TccAuthService, odatasettings: TccODataSettings);
    IAM_LOGIN_EXEC(creds: TccET_IAM.Credentials): Observable<TccET_IAM.LoginResponse>;
    IAM_LOGOUT_EXEC(service: ODataService<any>): Observable<TccET_IAM.LogoutResponse>;
    IAM_HEARTBEAT_EXEC(service: ODataService<any>): Observable<boolean>;
    IAM_PWRESET_EXEC(userId: string): Observable<any>;
    IAM_PWCHANGE_EXEC(newPw: string, userId?: string): Observable<any>;
    /**
     * @deprecated use IAM_PWRESET_EXEC instead
     * @param eMail
     * @returns
     */
    IAM_PWFORGOT_EXEC(eMail: string): Observable<any>;
    IAM_GETMEMBERSHIPS_EXEC(MemberId: string): Observable<TccET_IAM.GetMembershipsResponse>;
    /**
     * @deprecated
     * @param userId
     * @returns
     */
    private getUserBaseURL;
    IAM_SETCUSTOMSETTINGS(items: Object): Observable<any>;
    APPLI_ADDWORKSTACK_EXEC(appId: string, stack: TccET_APPLI.WorkStack): Observable<TccET_APPLI.Capture>;
    APPLI_DELETEWORKSTACK_EXEC(appId: string, stackId: string): Observable<TccET_APPLI.Capture>;
    APPLI_SETBLOBREFERENCE_EXEC(appId: string, param: {
        ReferenceId: string;
        Blobs: Array<string>;
    }): Observable<any>;
    APPLI_SETDOCUMENTREFERENCE_EXEC(appId: string, param: {
        ReferenceId: string;
        Documents: Array<string>;
    }): Observable<any>;
    CREATE_EML_BLOB(docId: string, data: {
        AccessToken: string;
        MailId: string;
    }): Observable<any>;
    XTRACT_INVOICE_POST(invoice: any, showIndicator: boolean): Observable<any>;
    BLOBS_UPLOAD_POST_ARRAYBUFFER(contenttype: string, blob: ArrayBuffer, showIndicator?: boolean): Observable<{
        BlobId: string;
    }>;
    BLOBS_UPLOAD_POST(contenttype: string, blob: Blob, showIndicator: boolean): Observable<{
        BlobId: string;
    }>;
    readmultifiles(files: FileList): Observable<{
        filename: string;
        contenttype: string;
        blob: ArrayBuffer;
    }>;
    TRANSP_PROCESSTRANSPORT_EXEC(transpId: string, param: {
        TargetSessionToken: string;
        Overwrite: boolean;
        AllowDowngrade?: boolean;
        Simulation?: boolean;
        Force?: boolean;
    }): Observable<TccET_C4.Transaction<any>[]>;
    TRANSP_EXPORTTRANSPORT_EXEC(transpId: string, transpName: string): Observable<void>;
    TRANSP_GETTRANSACTIONS_EXEC(transpId: string): Observable<TccET_C4.Transaction<any>[]>;
    private TRANSP_UPLOAD_POST_ARRAYBUFFER;
    TRANSP_IMPORTTRANSPORT_POST(files: FileList, allowDowngrade: boolean, simulation: boolean, force: boolean): Observable<{
        Result: boolean;
        Log: TccET_Log.Log[];
    }>;
    TRANSA_GETTRANSACTIONHISTORY_EXEC(transactionPath: string): Observable<TccET_C4.Transaction<any>[]>;
    TRANSA_RESTORE_EXEC(transactionId: string, target: string): Observable<boolean>;
    APPLI_DELETEBLOBS_EXEC(appId: string, param: {
        Blobs: Array<string>;
    }): Observable<any>;
    APPLI_DELETEDOCUMENTS_EXEC(appId: string, param: {
        Documents: Array<string>;
        DeleteBlobs: boolean;
    }): Observable<any>;
    APPLI_DELETESTAPLES_EXEC(appId: string, param: {
        DeleteBlobs: boolean;
        Staples: Array<string>;
    }): Observable<any>;
    DOCHUB_GETMANAGERASSIGNMENTS_EXEC(Managers: Array<string>): Observable<TccET_APPLI.DocumentHubManagerStats>;
    /**
     * Creates an item in the central processing queue for a specific document)
     * @param DocumentId Document to retry
     * @param Task QueueItemTask
     * @param ResetRetries Set Retries to 0
     * @returns success
     */
    DOCHUB_CREATEQUEUEITEM_EXEC(DocumentId: string, Task?: TccET_APPLI.QueueItemTask, ResetRetries?: boolean): Observable<boolean>;
    DOCHUB_DOWNLOADDOC_EXEC(DocumentId: string): Observable<any>;
    DOCHUB_DELETEDOCUMENTS_EXEC(documents: Array<string>): Observable<any>;
    DOCHUB_STATISTICS_EXEC(): Observable<ProcessingStatistics>;
    DOCHUB_GENERATEVIEWBLOBS_EXEC(docId: string): Observable<TccGeneratedViewblob>;
    APPLI_GETAPPLICATIONASSIGNMENTS_EXEC(Applications: Array<string>, disableLoading: boolean): Observable<TccET_APPLI.DocumentHubManagerStats>;
    APPLI_FORWARDDOCUMENTS_EXEC(appId: string, param: {
        Documents: Array<string>;
    }): Observable<any>;
    APPLI_ADDNOTE_EXEC(documentId: string, param: {
        Text: string;
        Type: TccET_APPLI.HistoryType;
    }, service: TccODataService<TccET_APPLI.Document>): Observable<TccSimpleNote>;
    APPLI_UPDATENOTE_EXEC(documentId: string, param: {
        Id: string;
        Text: string;
        Type: TccET_APPLI.HistoryType;
        State?: TccNoteState;
    }, service: TccODataService<TccET_APPLI.Document>): Observable<TccSimpleNote>;
    APPLI_GETWORKSTACKASSIGNMENTS_EXEC(appId: string): Observable<{
        Id: string;
        Blobs: number;
        Documents: number;
    }[]>;
    DEV_GETPACKAGERESOURCES(packageId: string): Observable<TccET_DEV.GetPackageResources>;
    DEV_GETPACKAGESOURCE_LINK(packageId: string): string;
    IAM_TENANTICON_LINK(tenantName: string, thumbnail?: boolean, forceReload?: boolean): string;
    IAM_TENANTICON_UPLOAD(tenantId: string, image: any, imagename: string): Observable<TccET_C4.ImageUploadResult>;
    IAM_TENANTICON_DELETE(tenantId: string): Observable<boolean>;
    IAM_PUBTENANTINFO_GET(tenantName: string): Observable<{
        DisplayName: string;
        Name: string;
    }>;
    BPI_DATABASE_QUERY(bpiprofileid: string, body: {
        Command: string;
        Fields?: {
            [FieldName: string]: any;
        };
    }): Observable<TccET_BPI.DatabaseQueryResponse>;
    private MIGRATION_XML_UPLOAD_POST_ARRAYBUFFER;
    MIGRATION_XML_UPLOAD_POST(file: File): Observable<{
        BlobId: string;
    }>;
    MIGRATION_XML_ANALYZE(id: string): Observable<any>;
    MIGRATION_XML_MIGRATE(id: string, MigItemIds?: string[]): Observable<any>;
    MIGRATION_XML_CLEANUP(id: string): Observable<any>;
}
