// Type definitions for JSData Http Adapter 1.2 // Project: https://github.com/js-data/js-data-http 2.2 // Definitions by: Stefan Steinhart // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped import * as JSData from 'js-data'; declare module 'js-data' { interface DSHttpAdapterOptions { serialize?(resourceName: string, data: any): any; deserialize?(resourceName: string, data: any): any; queryTransform?(resourceName: string, params: DSFilterParams): any; httpConfig?: any; forceTrailingSlash?: boolean; log?: boolean | ((message?: any, ...optionalParams: any[]) => void); error?: boolean | ((message?: any, ...optionalParams: any[]) => void); basePath?: string; verbsUseBasePath?: string; } interface DSHttpAdapterPromiseResolveType { data: any; headers: any; status: number; config: any; } interface DSHttpAdapter extends IDSAdapter { new(options?: DSHttpAdapterOptions): DSHttpAdapter; defaults: DSHttpAdapterOptions; http: any; // DSHttpAdapter uses axios so options are axios config objects. HTTP(options?: Object): JSDataPromise; DEL(url: string, data?: Object, options?: Object): JSDataPromise; GET(url: string, data?: Object, options?: Object): JSDataPromise; POST(url: string, data?: Object, options?: Object): JSDataPromise; PUT(url: string, data?: Object, options?: Object): JSDataPromise; } } declare var DSHttpAdapter: JSData.DSHttpAdapter; export = DSHttpAdapter; export as namespace DSHttpAdapter;