UNPKG

1.89 kBTypeScriptView Raw
1import { SourceSlice } from '../../source/slice';
2import { BlockSymbolTable, ProgramSymbolTable } from '../../symbol-table';
3import { Args } from './args';
4import type { ComponentArg, ElementModifier, HtmlOrSplatAttr } from './attr-block';
5import type { GlimmerParentNodeOptions } from './base';
6import { BaseNodeFields } from './node';
7declare const Template_base: import("./node").NodeConstructor<{
8 table: ProgramSymbolTable;
9} & GlimmerParentNodeOptions & BaseNodeFields>;
10/**
11 * Corresponds to an entire template.
12 */
13export declare class Template extends Template_base {
14}
15declare const Block_base: import("./node").NodeConstructor<{
16 scope: BlockSymbolTable;
17} & GlimmerParentNodeOptions & BaseNodeFields>;
18/**
19 * Represents a block. In principle this could be merged with `NamedBlock`, because all cases
20 * involving blocks have at least a notional name.
21 */
22export declare class Block extends Block_base {
23}
24declare const NamedBlocks_base: import("./node").NodeConstructor<{
25 blocks: readonly NamedBlock[];
26} & BaseNodeFields>;
27/**
28 * Corresponds to a collection of named blocks.
29 */
30export declare class NamedBlocks extends NamedBlocks_base {
31 /**
32 * Get the `NamedBlock` for a given name.
33 */
34 get(name: 'default'): NamedBlock;
35 get(name: string): NamedBlock | null;
36}
37export interface NamedBlockFields extends BaseNodeFields {
38 name: SourceSlice;
39 block: Block;
40 attrs: readonly HtmlOrSplatAttr[];
41 componentArgs: readonly ComponentArg[];
42 modifiers: readonly ElementModifier[];
43}
44declare const NamedBlock_base: import("./node").NodeConstructor<NamedBlockFields & BaseNodeFields>;
45/**
46 * Corresponds to a single named block. This is used for anonymous named blocks (`default` and
47 * `else`).
48 */
49export declare class NamedBlock extends NamedBlock_base {
50 get args(): Args;
51}
52export {};
53//# sourceMappingURL=internal-node.d.ts.map
\No newline at end of file