Using CCreateElement for other Core UI Elements

I’m new to React and have been tinkering around with Core UI. In the free version, the sidebar nav uses CCreateElement to create the navigation items. Is it possible to use the same component to create other components. For example, could I create a CInput component using the same process? If so, how would I write the code?

I thought it would be something similar to the following:

const inputItems = [
    {
      _tag: 'CInput',
      type: 'email',
      id: "nf-email",
      name: "nf-email",
      placeholder: "Enter Email..",
      autoComplete: "email",
    },
  ];

<CCreateElement
        items={inputItems}
        components={{
          CInput,
        }}
      />

But this just raises a js console error without any explanation. Any suggestions?