"use client";

import React from "react";
import { createComponentDefinition } from "../../utils/createComponentDefinition";
import { ComponentCategory } from "@/types/component";
import type { WebType } from "@/types/screen";
import { CheckboxBasicWrapper } from "./CheckboxBasicComponent";
import { CheckboxBasicConfigPanel } from "./CheckboxBasicConfigPanel";
import { CheckboxBasicConfig } from "./types";

/**
 * CheckboxBasic 컴포넌트 정의
 * checkbox-basic 컴포넌트입니다
 */
export const CheckboxBasicDefinition = createComponentDefinition({
  id: "checkbox-basic",
  name: "체크박스",
  nameEng: "CheckboxBasic Component",
  description: "체크 상태 선택을 위한 체크박스 컴포넌트",
  category: ComponentCategory.FORM,
  webType: "checkbox",
  component: CheckboxBasicWrapper,
  defaultConfig: {
    placeholder: "입력하세요",
  },
  defaultSize: { width: 150, height: 120 }, // 40 * 3 (3개 옵션)
  configPanel: CheckboxBasicConfigPanel,
  icon: "Edit",
  tags: [],
  version: "1.0.0",
  author: "개발팀",
  documentation: "https://docs.example.com/components/checkbox-basic",
});

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

// 컴포넌트 내보내기
export { CheckboxBasicComponent } from "./CheckboxBasicComponent";
export { CheckboxBasicRenderer } from "./CheckboxBasicRenderer";
