import { AxiosResponse } from "axios"; import { IServiceConfig, IServiceEndPoint, IServiceRequest } from "../interface/IElmerService"; export declare type TypeI18nDefaultLocale = "zhGN" | "enGB"; export declare type TypeServiceEnv = "LOCAL" | "UAT" | "SIT" | "PROD"; export declare type TypeI18nConfig = { locale?: (keyof I18nData) | SupportLocales; converts?: Conversions; data: I18nData; }; export declare type TypeServiceError = { statusCode: string | number; message: string; resp: any; }; export declare type TypeRouterServiceEndPointOptions = { path: string; reduxActionType?: string; }; export declare type TypeRouterConfig = { service: TypeServiceConfig; }; export declare type TypeServiceEvent = { status?: string | number; statusText?: string | number; canceled?: boolean; data?: any; }; export declare type TypeServiceConfig = { common?: { onResponse?(resp: AxiosResponse, event?: TypeServiceEvent): boolean | undefined; onBefore?(endPoint: IServiceEndPoint, option?: IServiceRequest): boolean | undefined; onError?(error: TypeServiceError): boolean | undefined; }; config: { [P in keyof TypeServiceConfigData]: IServiceConfig; }; }; export declare type TypeGlobalConfig = { router?: TypeRouterConfig; service?: TypeServiceConfig; i18n?: TypeI18nConfig; env?: any; };