"use client";

import React from "react";
import { createComponentDefinition } from "../../utils/createComponentDefinition";
import { ComponentCategory } from "@/types/component";
import type { WebType } from "@/types/screen";
import { SelectBasicWrapper } from "./SelectBasicComponent";
import { SelectBasicConfigPanel } from "./SelectBasicConfigPanel";
import { SelectBasicConfig } from "./types";

/**
 * SelectBasic 컴포넌트 정의
 * select-basic 컴포넌트입니다
 */
export const SelectBasicDefinition = createComponentDefinition({
  id: "select-basic",
  name: "선택상자",
  nameEng: "SelectBasic Component",
  description: "옵션 선택을 위한 드롭다운 선택상자 컴포넌트",
  category: ComponentCategory.FORM,
  webType: "select",
  component: SelectBasicWrapper,
  defaultConfig: {
    options: [],
    placeholder: "선택하세요",
  },
  defaultSize: { width: 250, height: 40 },
  configPanel: SelectBasicConfigPanel,
  icon: "Edit",
  tags: [],
  version: "1.0.0",
  author: "개발팀",
  documentation: "https://docs.example.com/components/select-basic",
});

// 타입 내보내기
export type { SelectBasicConfig } from "./types";

// 컴포넌트 내보내기
export { SelectBasicComponent } from "./SelectBasicComponent";
export { SelectBasicRenderer } from "./SelectBasicRenderer";
