Skip to content

feat(types): add TypeScript type definitions #51

@usernane

Description

@usernane

Problem

No TypeScript support, limiting adoption by TS users.

Suggestion

Create AJAXRequest.d.ts with type definitions.

Example

interface AJAXRequestConfig {
  method?: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'HEAD' | 'OPTIONS';
  url?: string;
  base?: string;
  params?: string | object | FormData;
  headers?: Record<string, string>;
  verbose?: boolean;
  enabled?: boolean;
  beforeAjax?: CallbackFunction | CallbackFunction[];
  onSuccess?: CallbackFunction | CallbackFunction[];
  onClientErr?: CallbackFunction | CallbackFunction[];
  onServerErr?: CallbackFunction | CallbackFunction[];
  onDisconnected?: CallbackFunction | CallbackFunction[];
  afterAjax?: CallbackFunction | CallbackFunction[];
  onErr?: CallbackFunction | CallbackFunction[];
}

declare class AJAXRequest {
  constructor(config?: AJAXRequestConfig);
  send(): boolean;
  setURL(url: string): void;
  setMethod(method: string): void;
  setParams(params: string | object | FormData): void;
  // ...
}

declare const ajax: AJAXRequest;

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions