"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.AIModelDto = exports.UsageStatsDto = exports.AIConfigResponseDto = exports.UpdateAIConfigDto = void 0; const swagger_1 = require("@nestjs/swagger"); const class_validator_1 = require("class-validator"); const entities_1 = require("../entities"); class UpdateAIConfigDto { } exports.UpdateAIConfigDto = UpdateAIConfigDto; __decorate([ (0, swagger_1.ApiPropertyOptional)({ description: 'AI provider', enum: entities_1.AIProvider }), (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsEnum)(entities_1.AIProvider), __metadata("design:type", String) ], UpdateAIConfigDto.prototype, "provider", void 0); __decorate([ (0, swagger_1.ApiPropertyOptional)({ description: 'Default model to use' }), (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsString)(), __metadata("design:type", String) ], UpdateAIConfigDto.prototype, "default_model", void 0); __decorate([ (0, swagger_1.ApiPropertyOptional)({ description: 'Fallback model if default fails' }), (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsString)(), __metadata("design:type", String) ], UpdateAIConfigDto.prototype, "fallback_model", void 0); __decorate([ (0, swagger_1.ApiPropertyOptional)({ description: 'Temperature (0-2)', default: 0.7 }), (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsNumber)(), (0, class_validator_1.Min)(0), (0, class_validator_1.Max)(2), __metadata("design:type", Number) ], UpdateAIConfigDto.prototype, "temperature", void 0); __decorate([ (0, swagger_1.ApiPropertyOptional)({ description: 'Maximum tokens', default: 2048 }), (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsNumber)(), (0, class_validator_1.Min)(1), (0, class_validator_1.Max)(32000), __metadata("design:type", Number) ], UpdateAIConfigDto.prototype, "max_tokens", void 0); __decorate([ (0, swagger_1.ApiPropertyOptional)({ description: 'Default system prompt' }), (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsString)(), __metadata("design:type", String) ], UpdateAIConfigDto.prototype, "system_prompt", void 0); __decorate([ (0, swagger_1.ApiPropertyOptional)({ description: 'Enable AI features' }), (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsBoolean)(), __metadata("design:type", Boolean) ], UpdateAIConfigDto.prototype, "is_enabled", void 0); __decorate([ (0, swagger_1.ApiPropertyOptional)({ description: 'Allow custom prompts' }), (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsBoolean)(), __metadata("design:type", Boolean) ], UpdateAIConfigDto.prototype, "allow_custom_prompts", void 0); __decorate([ (0, swagger_1.ApiPropertyOptional)({ description: 'Log conversations' }), (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsBoolean)(), __metadata("design:type", Boolean) ], UpdateAIConfigDto.prototype, "log_conversations", void 0); __decorate([ (0, swagger_1.ApiPropertyOptional)({ description: 'Additional settings' }), (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsObject)(), __metadata("design:type", Object) ], UpdateAIConfigDto.prototype, "settings", void 0); class AIConfigResponseDto { } exports.AIConfigResponseDto = AIConfigResponseDto; __decorate([ (0, swagger_1.ApiProperty)(), __metadata("design:type", String) ], AIConfigResponseDto.prototype, "id", void 0); __decorate([ (0, swagger_1.ApiProperty)(), __metadata("design:type", String) ], AIConfigResponseDto.prototype, "tenant_id", void 0); __decorate([ (0, swagger_1.ApiProperty)({ enum: entities_1.AIProvider }), __metadata("design:type", String) ], AIConfigResponseDto.prototype, "provider", void 0); __decorate([ (0, swagger_1.ApiProperty)(), __metadata("design:type", String) ], AIConfigResponseDto.prototype, "default_model", void 0); __decorate([ (0, swagger_1.ApiPropertyOptional)(), __metadata("design:type", String) ], AIConfigResponseDto.prototype, "fallback_model", void 0); __decorate([ (0, swagger_1.ApiProperty)(), __metadata("design:type", Number) ], AIConfigResponseDto.prototype, "temperature", void 0); __decorate([ (0, swagger_1.ApiProperty)(), __metadata("design:type", Number) ], AIConfigResponseDto.prototype, "max_tokens", void 0); __decorate([ (0, swagger_1.ApiPropertyOptional)(), __metadata("design:type", String) ], AIConfigResponseDto.prototype, "system_prompt", void 0); __decorate([ (0, swagger_1.ApiProperty)(), __metadata("design:type", Boolean) ], AIConfigResponseDto.prototype, "is_enabled", void 0); __decorate([ (0, swagger_1.ApiProperty)(), __metadata("design:type", Boolean) ], AIConfigResponseDto.prototype, "allow_custom_prompts", void 0); __decorate([ (0, swagger_1.ApiProperty)(), __metadata("design:type", Boolean) ], AIConfigResponseDto.prototype, "log_conversations", void 0); __decorate([ (0, swagger_1.ApiProperty)(), __metadata("design:type", Date) ], AIConfigResponseDto.prototype, "created_at", void 0); __decorate([ (0, swagger_1.ApiProperty)(), __metadata("design:type", Date) ], AIConfigResponseDto.prototype, "updated_at", void 0); class UsageStatsDto { } exports.UsageStatsDto = UsageStatsDto; __decorate([ (0, swagger_1.ApiProperty)(), __metadata("design:type", Number) ], UsageStatsDto.prototype, "request_count", void 0); __decorate([ (0, swagger_1.ApiProperty)(), __metadata("design:type", Number) ], UsageStatsDto.prototype, "total_input_tokens", void 0); __decorate([ (0, swagger_1.ApiProperty)(), __metadata("design:type", Number) ], UsageStatsDto.prototype, "total_output_tokens", void 0); __decorate([ (0, swagger_1.ApiProperty)(), __metadata("design:type", Number) ], UsageStatsDto.prototype, "total_tokens", void 0); __decorate([ (0, swagger_1.ApiProperty)(), __metadata("design:type", Number) ], UsageStatsDto.prototype, "total_cost", void 0); __decorate([ (0, swagger_1.ApiProperty)(), __metadata("design:type", Number) ], UsageStatsDto.prototype, "avg_latency_ms", void 0); class AIModelDto { } exports.AIModelDto = AIModelDto; __decorate([ (0, swagger_1.ApiProperty)(), __metadata("design:type", String) ], AIModelDto.prototype, "id", void 0); __decorate([ (0, swagger_1.ApiProperty)(), __metadata("design:type", String) ], AIModelDto.prototype, "name", void 0); __decorate([ (0, swagger_1.ApiProperty)(), __metadata("design:type", String) ], AIModelDto.prototype, "provider", void 0); __decorate([ (0, swagger_1.ApiProperty)(), __metadata("design:type", Number) ], AIModelDto.prototype, "context_length", void 0); __decorate([ (0, swagger_1.ApiProperty)(), __metadata("design:type", Object) ], AIModelDto.prototype, "pricing", void 0); //# sourceMappingURL=config.dto.js.map