marko
Version:
Optimized runtime for Marko templates.
15 lines (14 loc) • 1.02 kB
TypeScript
import { types as t } from "@marko/compiler";
import { type BindingPropTree } from "./binding-prop-tree";
import { type AttrTagLookup } from "./nested-attribute-tags";
type ContentKey = "renderBody" | "content";
export declare function translateAttrs(tag: t.NodePath<t.MarkoTag>, propTree?: BindingPropTree | true, skip?: Set<string>, statements?: t.Statement[], contentKey?: ContentKey): {
properties: (t.ObjectMethod | t.ObjectProperty | t.SpreadElement)[];
statements: t.Statement[];
};
export declare function getTranslatedBodyContentProperty(props: t.ObjectExpression["properties"]): (t.ObjectProperty & {
value: t.Expression;
}) | undefined;
export declare function addDynamicAttrTagStatements(attrTags: t.NodePath<t.MarkoTag["attributeTags"][number]>[], index: number, attrTagLookup: AttrTagLookup, statements: t.Statement[], propTree: BindingPropTree | true, contentKey?: ContentKey): number;
export declare function propsToExpression(props: t.ObjectExpression["properties"]): t.Expression;
export {};