UNPKG

ferngully-aurelia-tools

Version:

Ferngully Tools for Aurelia

43 lines (42 loc) 1.84 kB
import { HttpClient, RequestInit } from "aurelia-fetch-client"; import { NumberService } from "./number-service"; import { AjaxErrorHandler as IErrorHandler } from "./handle-errors-service"; import { LoggingService } from "./logging-service"; import { I18N } from 'aurelia-i18n'; export declare class Ajax { private http; private errorHandler; private loggingService; private numberService; private i18n; static GlobalBaseUrl: string; static GlobalRequestInit: RequestInit; BaseUrl: string; noCacheHeader: any; private _initialized; constructor(http: HttpClient, errorHandler: IErrorHandler, loggingService: LoggingService, numberService: NumberService, i18n: I18N); private configure(); private fetch<T>(url, init); fetchNumber(url: string, init?: RequestInit): Promise<IAjaxResult<number>>; fetchText(url: string, init?: RequestInit): Promise<IAjaxResult<string>>; fetchJson<T>(url: string, init?: RequestInit): Promise<IAjaxResult<any>>; put<T>(url: string, data: Object, init?: RequestInit): Promise<IAjaxResult<T>>; post<T>(url: string, data?: Object, init?: RequestInit): Promise<IAjaxResult<T>>; delete<T>(url: string, init?: RequestInit): Promise<IAjaxResult<T>>; private getAjaxResponse<T>(response); private getAjaxResultForType(response, dataReturnType); private handleJavaScriptException<T>(ex); private handleTypeError<T>(ex); private handleServerException<T>(ex); private handleDOMException<T>(ex); private handleServerError<T>(error); } export interface IAjaxResult<T> { Success: boolean; ErrorCode?: number; ErrorMessage?: string; Data?: T; } export interface IErrorHandler { HandleError(friendlyMessage: string, diagnosticMessage?: string): Promise<void>; }