import { types as t } from "@marko/compiler"; import { type BindingPropTree } from "./binding-prop-tree"; import { type Binding } from "./references"; import { type Section } from "./sections"; interface KnownExprs { known?: Record; value?: t.NodeExtra; } declare const kContentSection: unique symbol; declare const kChildScopeBinding: unique symbol; declare const kChildOffsetScopeBinding: unique symbol; declare const kKnownExprs: unique symbol; declare module "@marko/compiler/dist/types" { interface MarkoTagExtra { [kContentSection]?: Section; [kChildScopeBinding]?: Binding; [kChildOffsetScopeBinding]?: Binding; [kKnownExprs]?: KnownExprs; } } export declare function knownTagAnalyze(tag: t.NodePath, contentSection: Section, propTree: BindingPropTree | undefined): void; export declare function knownTagTranslateHTML(tag: t.NodePath, tagIdentifier: t.Expression, contentSection: Section, propTree: BindingPropTree | undefined): void; export declare function knownTagTranslateDOM(tag: t.NodePath, propTree: BindingPropTree | undefined, getBindingIdentifier: (binding: Binding, preferredName?: string) => t.Identifier, callSetup: (section: Section, childBinding: Binding) => void): void; export declare function finalizeKnownTags(section: Section): void; export {};