import { MetaAttributeValues, MetaAttributeValuesInternal } from "./parseMetaHTMLAttribute"; import { Props } from "./getProps"; import { Log } from "../log"; declare type ParseMetaComponentStringProps = { domDocument: Document; metaHTMLString: string; cssString: string; log: Log; }; export declare function parseMetaComponentString({ domDocument, metaHTMLString, cssString, log, }: ParseMetaComponentStringProps): MetaComponent; export declare type MetaComponent = { cssString: string; nodes: MetaNode[]; props: Props; }; export declare type MetaNode = MetaHTMLElement | MetaHTMLText | MetaHTMLComment | MetaHTMLVariable | MetaHTMLIf; export declare type MetaNodeInternal = MetaHTMLElementInternal | MetaHTMLText | MetaHTMLComment | MetaHTMLVariableInternal | MetaHTMLIfInternal; export declare type MetaHTMLElement = { type: "Element"; nodeName: string; attributes: Record; children: MetaNode[]; cssProperties: MetaCSSPropertiesNode[]; }; export declare type MetaHTMLElementInternal = Omit & { children: MetaNodeInternal[]; attributes: Record; node: HTMLElement; }; export declare type MetaCSSPropertiesNode = MetaCSSPropertiesConditionalNode | MetaCSSPropertiesConstantNode; export declare type MetaCSSPropertiesConstantNode = { type: "MetaCSSPropertiesConstantNode"; cssPropertiesString: string; }; export declare type MetaCSSPropertiesConditionalNode = { type: "MetaCSSPropertiesConditionalNode"; id: string; condition: { [equalsString: string]: string; }; }; export declare type MetaHTMLText = { type: "Text"; value: string; }; export declare type MetaHTMLComment = { type: "Comment"; value: string; }; export declare type MetaHTMLVariable = { type: "Variable"; id: string; children: MetaNode[]; }; export declare type MetaHTMLVariableInternal = { type: "Variable"; id: string; optional: boolean; children: MetaNodeInternal[]; }; declare type MetaHTMLIfBase = { type: "If"; children: MetaNode[]; }; export declare type MetaHTMLIfSuccess = MetaHTMLIfBase & { parseError: false; ids: string[]; testAsJavaScriptExpression: string; testAsPythonExpression: string; testAsPHPExpression: string; }; export declare type MetaHTMLIfFailure = MetaHTMLIfBase & { parseError: true; error: string; }; export declare type MetaHTMLIf = MetaHTMLIfSuccess | MetaHTMLIfFailure; export declare type MetaHTMLIfSuccessInternal = Omit & { children: MetaNodeInternal[]; optional: boolean; }; export declare type MetaHTMLIfFailureInternal = Omit & { children: MetaNodeInternal[]; optional: boolean; }; export declare type MetaHTMLIfInternal = MetaHTMLIfSuccessInternal | MetaHTMLIfFailureInternal; export {};