package com.saas.admin.dto.response;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.time.LocalDateTime;

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class TenantDetailResponse {
    // General Info
    private String tenantId;
    private String tenantName;
    private String email;
    private String schemaName;
    private String status;
    private LocalDateTime createdAt;

    // Subscription & Quotas
    private String planName;
    private BigDecimal planPrice;
    private String subscriptionStatus;
    private Integer maxUsers;
    private Integer currentUsers; // Need query for this or N/A
    private Integer maxAgents;
    private Integer currentAgents; // Need query for this or N/A
    private Integer includedMinutes;
    private Integer usedMinutes;

    // AI Config
    private boolean aiEnabled;
    private String primaryAiProvider;
    private String assignedVapiAssistantId;
    private String assignedRetellAgentId;

    // VoIP Config
    private String primaryVoipProvider;
    private String twilioAccountSid; // Masked
    private String telnyxApiKey; // Masked
}
