namespace Meezi.API.Models.Cafes;

public record CafeSettingsDto(
    string Id,
    string Name,
    string Slug,
    string? Phone,
    string? Address,
    string? City,
    string? Description,
    string? LogoUrl,
    string? CoverImageUrl,
    string? SnappfoodVendorId,
    string PlanTier,
    DateTime? PlanExpiresAt,
    CafeThemeDto Theme,
    decimal DefaultTaxRate,
    bool AllowBranchTaxOverride,
    double? Latitude,
    double? Longitude);

public record PatchCafeSettingsRequest(
    string? Name,
    /// <summary>Custom Koja profile slug (e.g. "lamiz-enghelab"). Must be unique across all cafés.</summary>
    string? Slug,
    string? Phone,
    string? Address,
    string? City,
    string? Description,
    string? LogoUrl,
    string? CoverImageUrl,
    string? SnappfoodVendorId,
    CafeThemeDto? Theme,
    decimal? DefaultTaxRate,
    bool? AllowBranchTaxOverride,
    /// <summary>WGS-84 latitude. Send null to clear.</summary>
    double? Latitude,
    /// <summary>WGS-84 longitude. Send null to clear.</summary>
    double? Longitude,
    /// <summary>When true, Latitude and Longitude are explicitly being cleared (set to null).</summary>
    bool ClearLocation = false);
