Skip to main content

Function: declarePeerDependency()

declarePeerDependency<Extension>(name, config?): NormalizedPeerDependency<Extension>

Used to declare a peer dependency of an extension in a type-safe way, requires the type parameter. The most common use case for peer dependencies is to avoid a direct import dependency, so you would want to use a type import or the import type (shown in below examples).

Type Parameters

Extension extends AnyLexicalExtension = never

Parameters

name: Extension["name"]

The extension's name

config?: Partial<LexicalExtensionConfig<Extension>>

An optional config override

Returns

NormalizedPeerDependency<Extension>

NormalizedPeerDependency

Example

export const PeerExtension = defineExtension({
name: 'PeerExtension',
peerDependencies: [
declarePeerDependency<typeof import("foo").FooExtension>("foo"),
declarePeerDependency<typeof import("bar").BarExtension>("bar", {config: "bar"}),
],
});

Defined in

defineExtension.ts:184