UNPKG

waha.js

Version:

TypeScript SDK for WAHA (WhatsApp HTTP API)

57 lines (56 loc) 1.94 kB
import { AxiosInstance, AxiosRequestConfig } from 'axios'; import { WahaClientConfig } from './types'; /** * Base client for making API requests to WAHA */ export declare class WahaBaseClient { protected readonly client: AxiosInstance; protected readonly config: WahaClientConfig; /** * Create a new WAHA client * @param config Client configuration */ constructor(config: WahaClientConfig); /** * Make a GET request * @param url API endpoint * @param params Query parameters * @param config Additional axios config * @returns Promise with response data */ protected get<T = any>(url: string, params?: Record<string, any>, config?: AxiosRequestConfig): Promise<T>; /** * Make a POST request * @param url API endpoint * @param data Request body * @param config Additional axios config * @returns Promise with response data */ protected post<T = any>(url: string, data?: Record<string, any>, config?: AxiosRequestConfig): Promise<T>; /** * Make a PUT request * @param url API endpoint * @param data Request body * @param config Additional axios config * @returns Promise with response data */ protected put<T = any>(url: string, data?: Record<string, any>, config?: AxiosRequestConfig): Promise<T>; /** * Make a DELETE request * @param url API endpoint * @param config Additional axios config * @returns Promise with response data */ protected delete<T = any>(url: string, config?: AxiosRequestConfig): Promise<T>; /** * Get the default session name * @returns Default session name */ protected getDefaultSession(): string; /** * Format session parameter for URL * @param session Session name or undefined to use default * @returns Formatted session name */ protected formatSession(session?: string): string; }