# Migration to v0.11
URL: /docs/migrations/v0-11
ContentPart renamed to MessagePart for better semantic clarity.
ContentPart renamed to MessagePart \[#contentpart-renamed-to-messagepart]
All ContentPart-related types, hooks, and components have been renamed to MessagePart for better semantic clarity and consistency.
What changed \[#what-changed]
The following types and components have been renamed:
Core Types \[#core-types]
* `TextContentPart` → `TextMessagePart`
* `ReasoningContentPart` → `ReasoningMessagePart`
* `SourceContentPart` → `SourceMessagePart`
* `ImageContentPart` → `ImageMessagePart`
* `FileContentPart` → `FileMessagePart`
* `Unstable_AudioContentPart` → `Unstable_AudioMessagePart`
* `ToolCallContentPart` → `ToolCallMessagePart`
* `ContentPartStatus` → `MessagePartStatus`
* `ToolCallContentPartStatus` → `ToolCallMessagePartStatus`
Thread Message Parts \[#thread-message-parts]
* `ThreadUserContentPart` → `ThreadUserMessagePart`
* `ThreadAssistantContentPart` → `ThreadAssistantMessagePart`
Runtime and State Types \[#runtime-and-state-types]
* `ContentPartRuntime` → `MessagePartRuntime`
* `ContentPartState` → `MessagePartState`
Hooks \[#hooks]
* `useContentPart` → `useMessagePart`
* `useContentPartRuntime` → `useMessagePartRuntime`
* `useContentPartText` → `useMessagePartText`
* `useContentPartReasoning` → `useMessagePartReasoning`
* `useContentPartSource` → `useMessagePartSource`
* `useContentPartFile` → `useMessagePartFile`
* `useContentPartImage` → `useMessagePartImage`
* `useTextContentPart` → `useTextMessagePart`
Component Types \[#component-types]
* `EmptyContentPartComponent` → `EmptyMessagePartComponent`
* `TextContentPartComponent` → `TextMessagePartComponent`
* `ReasoningContentPartComponent` → `ReasoningMessagePartComponent`
* `SourceContentPartComponent` → `SourceMessagePartComponent`
* `ImageContentPartComponent` → `ImageMessagePartComponent`
* `FileContentPartComponent` → `FileMessagePartComponent`
* `Unstable_AudioContentPartComponent` → `Unstable_AudioMessagePartComponent`
* `ToolCallContentPartComponent` → `ToolCallMessagePartComponent`
Props Types \[#props-types]
* `EmptyContentPartProps` → `EmptyMessagePartProps`
* `TextContentPartProps` → `TextMessagePartProps`
* `ReasoningContentPartProps` → `ReasoningMessagePartProps`
* `SourceContentPartProps` → `SourceMessagePartProps`
* `ImageContentPartProps` → `ImageMessagePartProps`
* `FileContentPartProps` → `FileMessagePartProps`
* `Unstable_AudioContentPartProps` → `Unstable_AudioMessagePartProps`
* `ToolCallContentPartProps` → `ToolCallMessagePartProps`
Providers and Context \[#providers-and-context]
* `TextContentPartProvider` → `TextMessagePartProvider`
* `TextContentPartProviderProps` → `TextMessagePartProviderProps`
* `ContentPartRuntimeProvider` → `MessagePartRuntimeProvider`
* `ContentPartContext` → `MessagePartContext`
* `ContentPartContextValue` → `MessagePartContextValue`
Primitives \[#primitives]
* `ContentPartPrimitive` → `MessagePartPrimitive`
* `ContentPartPrimitiveText` → `MessagePartPrimitiveText`
* `ContentPartPrimitiveImage` → `MessagePartPrimitiveImage`
* `ContentPartPrimitiveInProgress` → `MessagePartPrimitiveInProgress`
MessagePrimitive.Content renamed to MessagePrimitive.Parts \[#messageprimitivecontent-renamed-to-messageprimitiveparts]
The `MessagePrimitive.Content` component has been renamed to `MessagePrimitive.Parts` to better reflect its purpose of rendering message parts.
```diff
-