import { IApplication } from './IApplication'; import RequestDto from '../../Transport/Curl/RequestDto'; import { ApplicationInstall } from '../Database/ApplicationInstall'; import WebhookSubscription from '../Model/Webhook/WebhookSubscription'; import ResponseDto from '../../Transport/Curl/ResponseDto'; export interface IWebhookApplication extends IApplication { getWebhookSubscriptions(): WebhookSubscription[]; getWebhookSubscribeRequestDto(applicationInstall: ApplicationInstall, subscription: WebhookSubscription, url: string): RequestDto; getWebhookUnsubscribeRequestDto(applicationInstall: ApplicationInstall, id: string): RequestDto; processWebhookSubscribeResponse(dto: ResponseDto, applicationInstall: ApplicationInstall): string; processWebhookUnsubscribeResponse(dto: ResponseDto): boolean; }