```js // @noErrors import { createAttachmentKey } from 'svelte/attachments'; ``` ## createAttachmentKey
Available since 5.29
Creates an object key that will be recognised as an attachment when the object is spread onto an element, as a programmatic alternative to using `{@attach ...}`. This can be useful for library authors, though is generally not needed when building an app. ```svelte ```
```dts function createAttachmentKey(): symbol; ```
## Attachment An [attachment](/docs/svelte/@attach) is a function that runs when an element is mounted to the DOM, and optionally returns a function that is called when the element is later removed. It can be attached to an element with an `{@attach ...}` tag, or by spreading an object containing a property created with [`createAttachmentKey`](/docs/svelte/svelte-attachments#createAttachmentKey).
```dts interface Attachment {/*…*/} ```
```dts (element: T): void | (() => void); ```