# Interface ForwardRefExoticComponent<P>

The type of the component returned from forwardRef.

#### See

ExoticComponent

interface ForwardRefExoticComponent<P> {
$$typeof: symbol;
defaultProps?: Partial<P>;
displayName?: string;
propTypes?: WeakValidationMap<P>;
(props): ReactNode;
}

#### Type Parameters

- P

  The props the component accepts, if any.

#### Hierarchy (view full)

- NamedExoticComponent<P>
  - ForwardRefExoticComponent

- ForwardRefExoticComponent(props): ReactNode

- #### Parameters

  - props: P

  #### Returns ReactNode

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

#####
Index

### Properties

$$typeof
defaultProps?
displayName?
propTypes?

## Properties

### `Readonly` $$typeof

$$typeof: symbol

Inherited from NamedExoticComponent.$$typeof

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

### `Optional` defaultProps

defaultProps?: Partial<P>

#### Deprecated

Use values for destructuring assignments instead.

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

### `Optional` displayName

displayName?: string

Used in debugging messages. You might want to set it explicitly if you want to display a different name for debugging purposes.

#### See

Legacy React Docs

Inherited from NamedExoticComponent.displayName

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

### `Optional` propTypes

propTypes?: WeakValidationMap<P>

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