// Type definitions for jQuery Mockjax 2.3.0 // Project: https://github.com/jakerella/jquery-mockjax // Definitions by: // Laszlo Jakab , // Vladimir Đokić , // James Johnson // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 /// type MockJaxLoggingFunction = (message?: any, ...additionalParameters: any[]) => void; interface MockJaxStandardLogger { error?: MockJaxLoggingFunction; warn?: MockJaxLoggingFunction; info?: MockJaxLoggingFunction; log?: MockJaxLoggingFunction; debug?: MockJaxLoggingFunction; } interface MockJaxCustomLogger { [key: string]: MockJaxLoggingFunction; } interface MockJaxSettingsHeaders { [key: string]: string; } interface MockJaxSettings { url?: string | RegExp; urlParams?: string[]; data?: any; type?: string; headers?: MockJaxSettingsHeaders; logging?: boolean; status?: number; statusText?: string; responseTime?: number; isTimeout?: boolean; dataType?: string; contentType?: string; response?: (settings: any, done?: Function) => void; responseText?: string | Object; responseXml?: string; proxy?: string; proxyType?: string; lastModified?: string; etag?: string; onAfterSuccess?: Function; onAfterError?: Function; onAfterComplete?: Function; logger?: MockJaxStandardLogger | MockJaxCustomLogger; logLevelMethods?: string[]; namespace?: string; throwUnmocked?: boolean; retainAjaxCalls?: boolean; } interface MockJaxStatic { (options: MockJaxSettings): number; (options: MockJaxSettings[]): number[]; handler(id?: number): any; clear(id?: number): void; mockedAjaxCalls(): any[]; unfiredHandlers(): any[]; unmockedAjaxCalls(): any[]; clearRetainedAjaxCalls(): void; } interface JQueryStatic { mockjax: MockJaxStatic; mockjaxSettings: MockJaxSettings; }