> For the complete documentation index, see [llms.txt](/llms.txt).
> The full corpus is at [llms-full.txt](/llms-full.txt).

# useToolbarSchema

> **useToolbarSchema**(`props`): [`ToolbarSchema`](/api/toolbar/type-aliases/toolbarschema/)

Defined in: toolbar/src/use-toolbar-schema.ts:74

Resolve the editor's full toolbar schema. Returns the union of every
decorator, annotation, list, style, block object and inline object declared
anywhere in the editor's schema graph that is reachable from a position
where text is edited - the root schema merged with the sub-schema of every
registered container whose field accepts text blocks. Useful for rendering
a static toolbar whose buttons stay stable across selection moves.

Re-renders only when the schema graph or the extension callbacks change.
Pair with [useApplicableSchema](/api/toolbar/functions/useapplicableschema/) to determine which entries are
applicable at the current selection (which buttons should be enabled vs.
disabled).

:::caution[Beta]
This API should not be used in production and may be trimmed from a public release.
:::

## Parameters

### props

#### extendAnnotation?

[`ExtendAnnotationSchemaType`](/api/toolbar/type-aliases/extendannotationschematype/)

#### extendBlockObject?

[`ExtendBlockObjectSchemaType`](/api/toolbar/type-aliases/extendblockobjectschematype/)

#### extendDecorator?

[`ExtendDecoratorSchemaType`](/api/toolbar/type-aliases/extenddecoratorschematype/)

#### extendInlineObject?

[`ExtendInlineObjectSchemaType`](/api/toolbar/type-aliases/extendinlineobjectschematype/)

#### extendList?

[`ExtendListSchemaType`](/api/toolbar/type-aliases/extendlistschematype/)

#### extendStyle?

[`ExtendStyleSchemaType`](/api/toolbar/type-aliases/extendstyleschematype/)

## Returns

[`ToolbarSchema`](/api/toolbar/type-aliases/toolbarschema/)