import { describe, expect, it } from 'vitest'
import * as api from './index.js'

describe('react public surface', () => {
  it('exports provider, hooks, render contracts', () => {
    for (const n of [
      'FieldsProvider',
      'useFieldsClient',
      'useEntityFields',
      'useFieldValues',
      'useFieldGroupBuilder',
      'referenceInputs',
      'AsyncOptionSearch',
      'CompleteFieldValuesEditor',
      'createReactFieldSurfaceRegistry',
      'CustomFieldSurface',
      'COMPLETE_FIELD_TYPES',
      'FieldDefinitionListBuilder',
      'FieldGroupDefinitionBuilder',
      'OptionsPageDefinitionEditor',
      'OptionsPageValuesEditor',
      'FieldBlockDefinitionEditor',
      'BlockDocumentEditor',
      'BlockDocumentPreview',
      'FieldValidationSummary',
      'FieldsRevisionDiffView',
      'FieldsRevisionRestorePanel',
    ])
      expect(api).toHaveProperty(n)
  })
})
