import { type ITime } from '../stream/index.js'; import type { I$Node, I$Scheduler, IStyleCSS } from '../ui/types.js'; export type INodeElementDom = HTMLElement | SVGElement; export declare function createStyleRule(style: IStyleCSS, pseudo?: string | null): string | null; type IBindingChannel = 'style' | 'styleInline' | 'attr' | 'prop' | 'text'; export interface ICommitRecord { seq: number; time: ITime; channel: IBindingChannel; value: string; } export interface IRenderDevtool { journal(limit?: number): readonly ICommitRecord[]; bindings(): { total: number; live: number; byChannel: Record; }; } export interface IRenderConfig { rootAttachment: Element; $rootNode: I$Node; scheduler?: I$Scheduler; onError?: (err: unknown) => void; devtool?: boolean; } export interface IRenderResult extends Disposable { devtool?: IRenderDevtool; } export declare function render(config: IRenderConfig): IRenderResult; export {};