import { HttpHeaders, Entity } from '@farris/devkit-vue';
import { ResponseInfo } from './types';
import { BefRepository } from './bef-repository';
/**
 * 代理扩展
 */
export interface IProxyExtend {
    extendBody(body: any): any;
    extendHeaders(headers: any): Promise<any>;
    onResponse(response: ResponseInfo, hasRequestInfo: boolean): any;
    onError(error: any, selfHandError: boolean, ignoreError: boolean): Promise<any>;
}
/**
 * Bef代理扩展类
 */
export declare class BefProxyExtend implements IProxyExtend {
    private repository;
    private frameworkSessionService;
    /**
     * 构造函数
     */
    constructor(repository: BefRepository<Entity>);
    /**
     * 返回结果处理
     */
    onResponse(response: any, hasRequestInfo: boolean): ResponseInfo;
    /**
     * 处理服务器端返回的headers数据
     */
    private handleResponseHeaders;
    /**
     * 处理服务器端返回的Entity变更
     */
    private handleEntityChanges;
    /**
     * 处理后端返回的变量
     */
    private handleVariableChange;
    /**
     * 处理服务器端返回的的body数据
     */
    private handleResponseBody;
    /**
     * 清空Entity变更
     */
    private clearEntityChanges;
    /**
     * 清空Variable变更
     */
    private clearVariableChange;
    /**
     * 错误处理
     */
    onError(error: any, selfHandError: boolean, ignoreError: boolean): Promise<any>;
    /**
     * 扩展Headers
     */
    extendHeaders(headers: HttpHeaders): Promise<any>;
    /**
     * 扩展Body
     */
    extendBody(body: any): any;
}
