"use client";

import { ButtonPrimaryConfig } from "./types";

/**
 * ButtonPrimary 컴포넌트 기본 설정
 */
export const ButtonPrimaryDefaultConfig: ButtonPrimaryConfig = {
  text: "버튼",
  actionType: "button",
  variant: "primary",
  
  // 공통 기본값
  disabled: false,
  required: false,
  readonly: false,
  variant: "default",
  size: "md",
};

/**
 * ButtonPrimary 컴포넌트 설정 스키마
 * 유효성 검사 및 타입 체크에 사용
 */
export const ButtonPrimaryConfigSchema = {
    text: { type: "string", default: "버튼" },
  actionType: { 
    type: "enum", 
    values: ["button", "submit", "reset"], 
    default: "button" 
  },
  variant: { 
    type: "enum", 
    values: ["primary", "secondary", "danger"], 
    default: "primary" 
  },
  
  // 공통 스키마
  disabled: { type: "boolean", default: false },
  required: { type: "boolean", default: false },
  readonly: { type: "boolean", default: false },
  variant: { 
    type: "enum", 
    values: ["default", "outlined", "filled"], 
    default: "default" 
  },
  size: { 
    type: "enum", 
    values: ["sm", "md", "lg"], 
    default: "md" 
  },
};
