This is rendered as a React element (<Component {...props}/>), so it is a real component:
hooks are allowed, and it participates in reconciliation like any other component. The host's
ref is delivered as a regular prop (TaskPaneProps.ref, React 19 style) — forward it
to the pane's root element.
OptionalcomponentOptional component for a button that can be placed in the command bar.
OptionalcomponentOptional component to render a custom title for the task pane.
Optional ReadonlycontributionThe command paths to use to open the task pane.
Optional ReadonlykeepIf true, the pane stays mounted (hidden with display: none) while another pane is active,
instead of unmounting on switch. Opt in for panes that are expensive or fragile to (re)mount —
the script editor, whose Monaco/CDN-loader/worker setup is built around a single mount lifecycle
(remounting it re-runs the AMD loader shim + global juggling and re-creates the language workers,
which fails on the way back). Leave unset for ordinary panes so they keep the default
unmount-on-hide behavior (state resets, memory freed).
ReadonlykeyThe unique key for the task pane.
OptionalcreateOptionalgetThe title to display to identify the task pane.
The task pane component.