/**
 * ItemMasterDataManagement 로컬 타입 정의
 *
 * 주요 타입들은 ItemMasterContext에서 import:
 * - ItemPage, ItemSection, ItemField
 * - FieldDisplayCondition, ItemMasterField
 * - ItemFieldProperty, SectionTemplate
 */

// 옵션 칼럼 타입 (string 타입으로 유연하게 처리)
export interface OptionColumn {
  id: string;
  name: string;
  key: string;
  type: string;  // 'text' | 'number' 등 다양한 타입 지원
  required: boolean;
}

// 옵션 타입 (확장된 입력방식 지원)
export interface MasterOption {
  id: string;
  value: string;
  label: string;
  isActive: boolean;
  // 입력 방식 및 속성 (string 타입으로 유연하게 처리)
  inputType?: string;  // 'textbox' | 'dropdown' | 'checkbox' | 'number' | 'date' | 'textarea' 등
  required?: boolean;
  options?: string[];  // dropdown일 경우 선택 옵션
  defaultValue?: string | number | boolean;
  placeholder?: string;
  // 기존 칼럼 시스템 (호환성 유지)
  columns?: OptionColumn[];  // 칼럼 정의
  columnValues?: Record<string, string>;  // 칼럼별 값
}