UNPKG

intopays

Version:

Intopays - Gateway de integração bancária

44 lines (43 loc) 1.72 kB
import { Webhook } from "../models/Webhook"; import { WebhookRemote } from "../../infra/http/WebhookRemote"; /** * Serviço responsável pela lógica de negócios relacionada aos webhooks. */ export declare class WebhookService { private readonly remote; /** * Construtor da classe WebhookService. * @param remote - Instância da classe WebhookRemote responsável pela comunicação com o servidor. */ constructor(remote: WebhookRemote); /** * Cria um novo webhook no sistema. * @param data - Dados necessários para a criação do webhook, incluindo o endpoint. * @returns O objeto Webhook criado. */ create(data: { endpoint: string; }): Promise<Webhook>; /** * Busca uma lista de webhooks com base no endpoint fornecido. * @param data - Dados para filtrar os webhooks (opcional), incluindo o endpoint. * @returns Lista de webhooks que atendem aos critérios fornecidos. */ find(data?: { endpoint?: string | null; }): Promise<Array<Webhook>>; /** * Deleta um webhook específico pelo seu ID. * @param id - ID do webhook a ser deletado. * @returns O objeto Webhook deletado. */ delete(id: number): Promise<Webhook>; /** * Verifica a assinatura de um payload recebido de um webhook. * @param payload - O payload que foi recebido pelo webhook. * @param xWebhookSignature - A assinatura fornecida pelo webhook. * @param signature - A chave secreta para verificar a assinatura. * @returns Retorna `true` se a assinatura for válida, caso contrário `false`. */ verifySignature(payload: any, xWebhookSignature: string, signature: string): boolean; }