UNPKG

@macrof/shared

Version:

React MicroFrontend Shared, Typescript, Webpack 5, ModuleFederation

22 lines (21 loc) 1.22 kB
import { AxiosError, AxiosResponse } from 'axios'; import { Type } from 'io-ts'; export interface IResponseService { getResponseData<T>(response: AxiosResponse<T> | T, typeName?: Type<any>): T; getDtoResponse<T>(DTO: T | any): ({ data }: AxiosResponse) => T; getResponseError<T>(error: Error | AxiosError<T>): Promise<Error>; getResponseStatus(response: AxiosResponse): AxiosResponse | number; processStatus(status: number, successMessage: string, failedMessage?: string): boolean | undefined; decodeResponseData<T, U = T>(type: Type<U, T>): ({ data }: AxiosResponse<T>) => U; } export declare class Response implements IResponseService { private logger; getResponseData<T>(response: AxiosResponse<T> | T, typeName?: Type<any>): T; getDtoResponse<T>(DTO: T | any): ({ data }: AxiosResponse) => T; decodeResponseData<T, U = T>(type?: Type<U, T>): ({ data }: AxiosResponse<T>) => U; getResponseStatus(response: AxiosResponse): AxiosResponse | number; getResponseError<T>(error: Error | AxiosError<T>): Promise<Error>; processStatus(status: number, successMessage: string, failedMessage?: string): boolean | undefined; private checkType; private handleTypeError; }