/**
 * Constants — re-exports from enums for backward compatibility
 *
 * New code should import directly from:
 *   import { BuildingType, BookingStatus, City, ... } from '@/app/enums';
 *
 * Old imports from '@/app/utils/constants' continue to work.
 */

// Re-export all enums
export {
  BuildingType,
  BuildingTypeLabels,
  BuildingTypeKeys,
  BuildingTypeByKey,
} from '../enums/BuildingType';

export {
  PropertyStatus,
  PropertyStatusLabels,
  PropertyStatusKeys,
  PropertyStatusByKey,
} from '../enums/PropertyStatus';

export {
  BookingStatus,
  BookingStatusLabels,
  BookingStatusColors,
} from '../enums/BookingStatus';

export {
  CommissionType,
  CommissionTypeLabels,
} from '../enums/CommissionType';

export {
  IdentityType,
  IdentityTypeLabels,
  IdentityTypeFlags,
} from '../enums/IdentityType';

export {
  UserRole,
  UserRoleLabels,
  UserRoleColors,
} from '../enums/UserRole';

export {
  City,
  CitiesList,
  extractCity,
} from '../enums/City';

export { LoginMethod } from '../enums/LoginMethod';
export { OwnerType, OwnerTypeLabels } from '../enums/OwnerType';
export { CustomerType, CustomerTypeLabels } from '../enums/CustomerType';

// ─── Legacy aliases (keep old imports working) ───
export const PROPERTY_STATUS = PropertyStatusKeys;
export const BOOKING_STATUS = BookingStatus;
export const COMMISSION_TYPE = CommissionType;
export const IDENTITY_TYPE = IdentityType;
export const CITIES = City;

// ─── Misc constants ───
export const PAYMENT_METHOD = Object.freeze({
  CASH: 'cash',
  ELECTRONIC: 'electronic',
});

export const DEFAULT_COMMISSION_RATE = 5;
