UNPKG

@brighthustle/adonisjs-whatsapp

Version:

Connect your WhatsApp Cloud API with AdonisJS

32 lines (31 loc) 1.26 kB
/// <reference types="@adonisjs/lucid" /> import FormData from 'form-data'; import { GetMessageTemplatesQueryParams, WhatsAppConfig } from '@ioc:Adonis/Addons/WhatsApp'; import { DatabaseContract } from '@ioc:Adonis/Lucid/Database'; export default class WhatsAppClient { private config; private db; /** * Custom connection or query client */ private connection?; constructor(config: WhatsAppConfig, db: DatabaseContract); private headers; private mandatory; send(data: Record<string, any>, parse?: boolean): Promise<any>; media(media: string, from?: number): Promise<any>; upload(form: FormData, from?: number): Promise<any>; createTemplate(data: Record<string, any>): Promise<any>; getTemplates(options?: GetMessageTemplatesQueryParams, from?: number): Promise<any>; deleteTemplate(name: string, from?: number): Promise<any>; download(url: string, from?: number): Promise<any>; private parse; private parseMsg91; /** * Validates if the provided apiProvider is one of the allowed values. * @param apiProvider - The apiProvider to validate. * @throws {Error} - Throws an error if apiProvider is not valid. */ private validateApiProvider; private getHeaders; }