OptionaltargetsSelects the destination model for the "Create new …" picker.
"channels" (default): one chip per enabled channel (e.g. a Linear
team, a Slack channel). Existing behaviour for task-tracker / calendar
connectors."contacts": one chip per connection (account); the user picks
recipients from their contacts. The runtime pre-resolves the chosen
Plot contacts to platform account IDs via the per-connection
contact_external_account rows and delivers them as
CreateLinkDraft.recipients. Contacts without a row for this specific
connection are filtered out of the picker — used by closed-roster
messaging platforms (Slack DM, Teams DM, Google Chat DM, LinkedIn DM)."addresses": one chip per connection; the picker accepts any
contact with an addressable identifier (e.g. an email) or a free-form
typed address. The runtime fills recipients for contacts with a
connection-scoped row and falls back to the contact's primary address
(e.g. contact.email) when no row exists. Free-form addresses arrive
via the thread's inviteEmails. Used by open address spaces like
Gmail.Status to assign newly-created links. Should match an entry in the
parent linkType's statuses[], OR a symbolic id that the connector's
onCreateLink resolves itself (e.g. Linear's "unstarted" category is
resolved per-team to a state UUID inside the connector — see
connectors/linear/src/linear.ts).
OptionallabelOptional override for the picker chip / "Create new …" copy. Defaults
to the parent linkType's label. Use to disambiguate compose entries
when the parent label alone isn't specific enough (e.g. "Direct
messages" for a DM-mode compose on a chat connector).
Declares how a link type is composable from Plot via
Connector.onCreateLink. Attached to LinkTypeConfig.compose.