export {
  isPlainObject,
  defaultStructure,
  cloneStructure,
  toStringArray,
  extractFieldValueObject,
  sanitizeCustomFields,
  sanitizePieces,
  sanitizeProducts,
  hydrateProducts,
  normalizeStructureForEditor,
  normalizeStructureForSave,
  hydrateStructureForEditor,
  extractStructureFromComponent,
  computeStructureStats,
  formatStructurePreview,
  type ModelStructurePreview,
} from './model/componentStructure'

export {
  defaultPieceStructure,
  defaultProductStructure,
  clonePieceStructure,
  cloneProductStructure,
  normalizePieceStructureForSave,
  hydratePieceStructureForEditor,
  formatPieceStructurePreview,
  normalizeProductStructureForSave,
  hydrateProductStructureForEditor,
  formatProductStructurePreview,
} from './model/pieceProductStructure'

export {
  sanitizeDefinitionOverrides,
  type DefinitionOverridePayload,
} from './model/definitionOverrides'
