/**
 * DTO for updating a tenant setting.
 * Allows tenant admins to customize settings for their organization.
 */
export interface UpdateTenantSettingDto {
  value: any;
  isOverridden?: boolean;
}

/**
 * DTO for creating/upserting a tenant setting.
 * If setting exists, it updates; otherwise creates new.
 */
export interface CreateTenantSettingDto {
  key: string;
  value: any;
  inheritedFrom?: 'system' | 'plan' | 'custom';
  isOverridden?: boolean;
}

/**
 * DTO for bulk updating tenant settings.
 * Useful for settings pages that submit multiple changes at once.
 */
export interface BulkUpdateTenantSettingsDto {
  settings: Array<{
    key: string;
    value: any;
    isOverridden?: boolean;
  }>;
}
