import { TagName, HtmlTag, SvgTag, HtmlCreateHelper } from "../../../../types/livetree.types.js";
import { SvgLiveTree } from "../../../../types/svg.types.js";
import { LiveTree } from "../../livetree.js";
import { TreeSelector } from "../../creation/tree-selector.js";
export type CreateNs = "html" | "svg";
type CreateCore = {
setNextIndex: (index: number) => void;
consumeIndex: () => number | undefined;
createForTags: (tagOrTags: TagName | TagName[], index?: number) => LiveTree | TreeSelector;
createSingleTag: (tag: TagName, index?: number) => LiveTree;
createHtmlTagFromString: (expectedTag: HtmlTag, source: string, index?: number) => LiveTree;
createSvgTagFromString: (expectedTag: SvgTag, source: string, index?: number) => SvgLiveTree;
};
/** Throws early with a clean message (prevents XML parser spam). */
export declare function assert_valid_tag_name(name: unknown, ctx?: string): asserts name is TagName;
export declare function inferCreateNs(tree: LiveTree, tag: string): CreateNs;
export declare function build_markup_stub(tag: string, ns: CreateNs): string;
export declare function make_create_core(tree: LiveTree): CreateCore;
export declare function make_tree_create(tree: LiveTree): HtmlCreateHelper;
export {};
//# sourceMappingURL=create-core.d.ts.map