Skip to content

Declaration

Declares a symbol in the current scope for this component’s children.

Create a declaration by providing an already created symbol. The symbol is merely exposed via Declaration context.

import { Declaration } from "@alloy-js/core";
<Declaration symbol={OutputSymbol}>
{children}
</Declaration>
childrenoptionalChildren
symbolMemberDeclaration context interface

The symbol being declared. When provided, the name, refkey, and metadata props are ignored.

Create a declaration by providing a symbol name and optional symbol metadata.

import { Declaration } from "@alloy-js/core";
<Declaration
metadata={Record<string, unknown>}
name="string"
refkey={Refkey | Refkey[]}
>
{children}
</Declaration>
childrenoptionalChildren
metadataoptionalRecord<string, unknown>

Additional metadata for the declared symbol.

namestring

The name of this declaration.

refkeyoptionalRefkey | Refkey[]

The unique key or array of unique keys for this declaration.

This component must be called in one of two ways: with a name and an optional refkey, or else passing in the symbol. When called with a name and refkey, a symbol will be created in the current scope (provided by Scope context) with that name and refkey.

When called with a symbol, that symbol is merely exposed via Declaration context. It is assumed that the caller of this component has created the symbol with the createSymbol API on the Binder context.