export type TechnicalFieldType = 'text' | 'textarea' | 'select' | 'multi_select'

export interface TechnicalFormFieldOption {
  id: string
  label: string
  value: string
  sortOrder: number
}

export interface TechnicalFormField {
  id: string
  label: string
  key: string
  type: TechnicalFieldType
  isRequired: boolean
  sortOrder: number
  options: TechnicalFormFieldOption[]
}

export interface CategoryTechnicalForm {
  id: string
  categoryId: string
  fields: TechnicalFormField[]
}

export interface TechnicalFormFieldDraft {
  id: string
  label: string
  type: TechnicalFieldType
  isRequired: boolean
  options: string[]
}

export interface ProductTechnicalValue {
  fieldKey: string
  fieldLabel: string
  type: TechnicalFieldType
  value: string | string[] | null
  optionLabel?: string | null
  optionLabels?: string[]
}

export type ProductTechnicalFormValues = Record<string, string | string[]>
