/**
 * (compile-time props for shared input/textarea types — smoke assignability).
 */
import type {
  BaseLayoutInputProps,
  BaseTextareaProps,
} from '@/models/ui/input'

describe('[models/ui/input]', () => {
  describe('BaseLayoutInputProps', () => {
    it('accepts label, validation and description fields', () => {
      const props: BaseLayoutInputProps = {
        id: 'id',
        label: 'Label',
        required: true,
        placeholder: 'Placeholder',
        errors: 'Error',
        description: 'Desc',
      }
      expect(props.label).toBe('Label')
      expect(props.required).toBe(true)
    })
  })

  describe('BaseTextareaProps', () => {
    it('extends layout props with row count', () => {
      const props: BaseTextareaProps = {
        label: 'T',
        rows: 4,
      }
      expect(props.rows).toBe(4)
    })
  })
})
