"use strict"; var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.WebhookPayloadDto = void 0; const class_validator_1 = require("class-validator"); const class_transformer_1 = require("class-transformer"); const swagger_1 = require("@nestjs/swagger"); class WebhookMessageText { } __decorate([ (0, swagger_1.ApiProperty)(), (0, class_validator_1.IsString)(), __metadata("design:type", String) ], WebhookMessageText.prototype, "body", void 0); class WebhookMessageInteractive { } __decorate([ (0, class_validator_1.IsString)(), __metadata("design:type", String) ], WebhookMessageInteractive.prototype, "type", void 0); __decorate([ (0, class_validator_1.IsOptional)(), __metadata("design:type", Object) ], WebhookMessageInteractive.prototype, "button_reply", void 0); __decorate([ (0, class_validator_1.IsOptional)(), __metadata("design:type", Object) ], WebhookMessageInteractive.prototype, "list_reply", void 0); class WebhookMessage { } __decorate([ (0, class_validator_1.IsString)(), __metadata("design:type", String) ], WebhookMessage.prototype, "from", void 0); __decorate([ (0, class_validator_1.IsString)(), __metadata("design:type", String) ], WebhookMessage.prototype, "id", void 0); __decorate([ (0, class_validator_1.IsString)(), __metadata("design:type", String) ], WebhookMessage.prototype, "timestamp", void 0); __decorate([ (0, class_validator_1.IsString)(), __metadata("design:type", String) ], WebhookMessage.prototype, "type", void 0); __decorate([ (0, class_validator_1.IsOptional)(), (0, class_validator_1.ValidateNested)(), (0, class_transformer_1.Type)(() => WebhookMessageText), __metadata("design:type", WebhookMessageText) ], WebhookMessage.prototype, "text", void 0); __decorate([ (0, class_validator_1.IsOptional)(), __metadata("design:type", WebhookMessageInteractive) ], WebhookMessage.prototype, "interactive", void 0); __decorate([ (0, class_validator_1.IsOptional)(), __metadata("design:type", Object) ], WebhookMessage.prototype, "image", void 0); __decorate([ (0, class_validator_1.IsOptional)(), __metadata("design:type", Object) ], WebhookMessage.prototype, "audio", void 0); __decorate([ (0, class_validator_1.IsOptional)(), __metadata("design:type", Object) ], WebhookMessage.prototype, "document", void 0); __decorate([ (0, class_validator_1.IsOptional)(), __metadata("design:type", Object) ], WebhookMessage.prototype, "location", void 0); class WebhookContact { } class WebhookStatus { } __decorate([ (0, class_validator_1.IsString)(), __metadata("design:type", String) ], WebhookStatus.prototype, "id", void 0); __decorate([ (0, class_validator_1.IsString)(), __metadata("design:type", String) ], WebhookStatus.prototype, "status", void 0); __decorate([ (0, class_validator_1.IsString)(), __metadata("design:type", String) ], WebhookStatus.prototype, "timestamp", void 0); __decorate([ (0, class_validator_1.IsString)(), __metadata("design:type", String) ], WebhookStatus.prototype, "recipient_id", void 0); __decorate([ (0, class_validator_1.IsOptional)(), __metadata("design:type", Array) ], WebhookStatus.prototype, "errors", void 0); class WebhookMetadata { } __decorate([ (0, class_validator_1.IsString)(), __metadata("design:type", String) ], WebhookMetadata.prototype, "display_phone_number", void 0); __decorate([ (0, class_validator_1.IsString)(), __metadata("design:type", String) ], WebhookMetadata.prototype, "phone_number_id", void 0); class WebhookValue { } __decorate([ (0, class_validator_1.IsString)(), __metadata("design:type", String) ], WebhookValue.prototype, "messaging_product", void 0); __decorate([ (0, class_validator_1.ValidateNested)(), (0, class_transformer_1.Type)(() => WebhookMetadata), __metadata("design:type", WebhookMetadata) ], WebhookValue.prototype, "metadata", void 0); __decorate([ (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsArray)(), (0, class_validator_1.ValidateNested)({ each: true }), (0, class_transformer_1.Type)(() => WebhookContact), __metadata("design:type", Array) ], WebhookValue.prototype, "contacts", void 0); __decorate([ (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsArray)(), (0, class_validator_1.ValidateNested)({ each: true }), (0, class_transformer_1.Type)(() => WebhookMessage), __metadata("design:type", Array) ], WebhookValue.prototype, "messages", void 0); __decorate([ (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsArray)(), (0, class_validator_1.ValidateNested)({ each: true }), (0, class_transformer_1.Type)(() => WebhookStatus), __metadata("design:type", Array) ], WebhookValue.prototype, "statuses", void 0); class WebhookChange { } __decorate([ (0, class_validator_1.ValidateNested)(), (0, class_transformer_1.Type)(() => WebhookValue), __metadata("design:type", WebhookValue) ], WebhookChange.prototype, "value", void 0); __decorate([ (0, class_validator_1.IsString)(), __metadata("design:type", String) ], WebhookChange.prototype, "field", void 0); class WebhookEntry { } __decorate([ (0, class_validator_1.IsString)(), __metadata("design:type", String) ], WebhookEntry.prototype, "id", void 0); __decorate([ (0, class_validator_1.IsArray)(), (0, class_validator_1.ValidateNested)({ each: true }), (0, class_transformer_1.Type)(() => WebhookChange), __metadata("design:type", Array) ], WebhookEntry.prototype, "changes", void 0); class WebhookPayloadDto { } exports.WebhookPayloadDto = WebhookPayloadDto; __decorate([ (0, swagger_1.ApiProperty)({ description: 'Always "whatsapp_business_account"' }), (0, class_validator_1.IsString)(), __metadata("design:type", String) ], WebhookPayloadDto.prototype, "object", void 0); __decorate([ (0, swagger_1.ApiProperty)({ description: 'Array of webhook entries' }), (0, class_validator_1.IsArray)(), (0, class_validator_1.ValidateNested)({ each: true }), (0, class_transformer_1.Type)(() => WebhookEntry), __metadata("design:type", Array) ], WebhookPayloadDto.prototype, "entry", void 0); //# sourceMappingURL=webhook.dto.js.map