import { HttpRequest } from '@angular/common/http'; import { ErrorMessageModel } from '@uofx/core'; /** UOF 專用 Request 物件,用於紀錄重新嘗試次數 */ export declare class UofxHttpRequest extends HttpRequest { /** 已重新嘗試的次數 */ retryCount?: number; } export declare abstract class UofxBaseHttpHandler { /** 取得 Token */ abstract getToken(): string; /** 設定 Token */ abstract setToken(value: string, isRefresh?: boolean): any; /** 設定 Token 到期時間(秒) */ abstract setTokenExp(value: string): any; /** 取得 CorpId */ abstract getCorpId(): string; /** 取得API版本 */ abstract getApiVersion(): string; /** Request error status 400 */ abstract error400(errorMessage: ErrorMessageModel): any; /** Request error status 400 模組授權數量已滿、帳號授權數已滿、沒有授權 */ abstract error400LicenseFull(errorMessage: ErrorMessageModel): any; /** Request error status 400 站台版本已升級, 需重新整理頁面 */ abstract error400VersionUpdate(errorMessage: ErrorMessageModel): any; /** Request error status 401 */ abstract error401(errorMessage: string, url?: string): void; /** Request error status 403 無存取權限 */ abstract error403(): void; /** Request error status 404 找不到資料 */ abstract error404(errorMessage: ErrorMessageModel): void; /** Request error status 500 */ abstract error500(errorMessage: ErrorMessageModel): void; /** 可能發生504錯誤的情境(查詢、寫入處理時間過久、測試連線) */ abstract error504(errorMessage: ErrorMessageModel): void; /** Request error others */ abstract errorDefault(errorMessage: ErrorMessageModel): any; }