declare type Options = { data?: Record | FormData; params?: Record; requestType?: string; includeCode?: string[]; showErrorMessage?: boolean; } & Omit; declare type GetResponseOptions = Options & { getResponse: true; }; declare type GetFullDataOptions = Options & { getFullData: true; }; declare type GetFullDataAndResponseOptions = GetResponseOptions & GetFullDataOptions; declare type BlobDataOptions = Options & { responseType: 'blob'; }; declare type RequestResult = { code: string; data?: T; message?: string; }; declare function Request(url: string, options?: Options): Promise; declare function Request(url: string, options?: BlobDataOptions): Promise; declare function Request(url: string, options?: GetResponseOptions): Promise<{ response: Response; }> & Pick, 'data'>; declare function Request(url: string, options?: GetFullDataOptions): Promise>; declare function Request(url: string, options?: GetFullDataAndResponseOptions): Promise<{ response: Response; data?: RequestResult; }>; export default Request;