MemberDeclaration
Declares a symbol in the current member scope for this component’s children.
Overload 1
Section titled “Overload 1”Create a member declaration by providing a symbol name and optional symbol metadata.
import { MemberDeclaration } from "@alloy-js/core";
<MemberDeclaration metadata={Record<string, unknown>} name={string | Namekey} refkey={Refkey | Refkey[]} static> {children}</MemberDeclaration>import { MemberDeclaration } from "@alloy-js/core/stc";
MemberDeclaration({ metadata: Record<string, unknown>, name: string | Namekey, refkey: Refkey | Refkey[], static: boolean,}).children(children)| children | optional Children | |
| metadata | optional Record<string, unknown> | Additional metadata for the declared symbol. |
| name | string | Namekey | The name of this declaration. |
| refkey | optional Refkey | Refkey[] | The refkey or array refkeys for this declaration. |
| static | optional boolean | Whether this is a static member. If not provided, the member is an instance member. |
Overload 2
Section titled “Overload 2”Create a declaration by providing an already created symbol. The symbol is merely exposed via Declaration context.
import { MemberDeclaration } from "@alloy-js/core";
<MemberDeclaration symbol={OutputSymbol}> {children}</MemberDeclaration>import { MemberDeclaration } from "@alloy-js/core/stc";
MemberDeclaration({ symbol: OutputSymbol }).children(children)| children | optional Children | |
| symbol | OutputSymbol | The symbol being declared. When provided, the name, refkey, and metadata props are ignored. |
Remarks
Section titled “Remarks”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
BasicSymbol will be created in the current member space. When called with a
name, the owning scope must be a BasicScope; for custom scope/symbol
types, pass a pre-created symbol instead.
When called with a symbol, that symbol is merely exposed via
MemberDeclaration context (not Declaration context). Use
MemberName (not <Name />) to render the declared member’s name.