# Function cloneElement

- cloneElement<P, T>(element, props?, ...children): DetailedReactHTMLElement<P, T>

- #### Type Parameters

  - P extends HTMLAttributes<T>
  - T extends HTMLElement

  #### Parameters

  - element: DetailedReactHTMLElement<P, T>
  - `Optional` props: P
  - `Rest` ...children: ReactNode[]

  #### Returns DetailedReactHTMLElement<P, T>

  - Defined in common/temp/node_modules/.pnpm/@types+react@18.3.3/node_modules/@types/react/index.d.ts:562
- cloneElement<P, T>(element, props?, ...children): ReactHTMLElement<T>

- #### Type Parameters

  - P extends HTMLAttributes<T>
  - T extends HTMLElement

  #### Parameters

  - element: ReactHTMLElement<T>
  - `Optional` props: P
  - `Rest` ...children: ReactNode[]

  #### Returns ReactHTMLElement<T>

  - Defined in common/temp/node_modules/.pnpm/@types+react@18.3.3/node_modules/@types/react/index.d.ts:568
- cloneElement<P, T>(element, props?, ...children): ReactSVGElement

- #### Type Parameters

  - P extends SVGAttributes<T>
  - T extends SVGElement

  #### Parameters

  - element: ReactSVGElement
  - `Optional` props: P
  - `Rest` ...children: ReactNode[]

  #### Returns ReactSVGElement

  - Defined in common/temp/node_modules/.pnpm/@types+react@18.3.3/node_modules/@types/react/index.d.ts:574
- cloneElement<P, T>(element, props?, ...children): DOMElement<P, T>

- #### Type Parameters

  - P extends DOMAttributes<T>
  - T extends Element

  #### Parameters

  - element: DOMElement<P, T>
  - `Optional` props: DOMAttributes<T> & P
  - `Rest` ...children: ReactNode[]

  #### Returns DOMElement<P, T>

  - Defined in common/temp/node_modules/.pnpm/@types+react@18.3.3/node_modules/@types/react/index.d.ts:580
- cloneElement<P>(element, props?, ...children): FunctionComponentElement<P>

- #### Type Parameters

  - P

  #### Parameters

  - element: FunctionComponentElement<P>
  - `Optional` props: Partial<P> & Attributes
  - `Rest` ...children: ReactNode[]

  #### Returns FunctionComponentElement<P>

  - Defined in common/temp/node_modules/.pnpm/@types+react@18.3.3/node_modules/@types/react/index.d.ts:587
- cloneElement<P, T>(element, props?, ...children): CElement<P, T>

- #### Type Parameters

  - P
  - T extends Component<P, any, any>

  #### Parameters

  - element: CElement<P, T>
  - `Optional` props: Partial<P> & ClassAttributes<T>
  - `Rest` ...children: ReactNode[]

  #### Returns CElement<P, T>

  - Defined in common/temp/node_modules/.pnpm/@types+react@18.3.3/node_modules/@types/react/index.d.ts:592
- cloneElement<P>(element, props?, ...children): ReactElement<P>

- #### Type Parameters

  - P

  #### Parameters

  - element: ReactElement<P, string | JSXElementConstructor<any>>
  - `Optional` props: Partial<P> & Attributes
  - `Rest` ...children: ReactNode[]

  #### Returns ReactElement<P>

  - Defined in common/temp/node_modules/.pnpm/@types+react@18.3.3/node_modules/@types/react/index.d.ts:597