import { WebhookContracts } from '../../contracts/webhook-contracts'; import { SharedModels } from '../shared/shared-models'; export declare namespace WebhookModels { interface IAddWebhookData { name: string; secret: string; url: string; enabled?: boolean; triggers: { delivery_api_content_changes?: WebhookContracts.IWebhookDeliveryApiContentChangesContract[]; preview_delivery_api_content_changes?: WebhookContracts.IWebhookDeliveryApiContentChangesContract[]; workflow_step_changes?: WebhookContracts.IWebhookWorkflowStepChangesContract[]; management_api_content_changes?: WebhookContracts.IWebhookManagementApiContentChangesContract[]; }; } type WebhookWorkflowStepOperation = 'publish' | 'unpublish' | 'archive' | 'restore' | 'upsert'; class WebhookTransitionsTo { id: string; constructor(data: { id: string; }); } class WebhookWorkflowStepChanges { type: 'content_item_variant'; transitionsTo: WebhookTransitionsTo[]; constructor(data: { type: 'content_item_variant'; transitionsTo: WebhookTransitionsTo[]; }); } class WebhookDeliveryApiContentChanges { type: 'taxonomy' | 'content_item_variant'; operations: WebhookWorkflowStepOperation[]; constructor(data: { type: 'taxonomy' | 'content_item_variant'; operations: WebhookWorkflowStepOperation[]; }); } class Webhook implements SharedModels.IBaseModel { id: string; name: string; secret: string; url: string; lastModified?: Date; triggers: { deliveryApiContentChanges: WebhookDeliveryApiContentChanges[]; workflowStepChanges: WebhookWorkflowStepChanges[]; }; _raw: WebhookContracts.IWebhookContract; constructor(data: { id: string; name: string; secret: string; url: string; lastModified?: Date; triggers: { deliveryApiContentChanges: WebhookDeliveryApiContentChanges[]; workflowStepChanges: WebhookWorkflowStepChanges[]; }; _raw: WebhookContracts.IWebhookContract; }); } }