import type { BaseCI, CI, ComponentRenderBinding, UiSlotRet } from "../ui-interface"; export type UiSpecialBindingBuilder = () => Partial; export type UiSpecialBinding = Partial | UiSpecialBindingBuilder; export type UiRenderComponent = (ci: T, opts: T["__options"]) => UiSlotRet; export type UiDoRenderComponent = (binding: ComponentRenderBinding) => UiSlotRet; export type UiRenderHelper = { renderComponent: UiRenderComponent; doRenderComponent: UiDoRenderComponent; buildBinding: UiBuildBinding; creator: UIComponentCreator; }; export declare const doRenderComponent: UiDoRenderComponent; export declare const renderComponent: UiRenderComponent; export type UiBuildBinding = (ci: UIBaseCI, opts: T["__options"], special: UiSpecialBinding) => ComponentRenderBinding; export declare const buildBinding: UiBuildBinding; export type UIBaseCI = Omit & Partial>; export type UIComponentCreator = (ci: UIBaseCI, special?: UiSpecialBinding) => T; export declare const creator: UIComponentCreator; export declare function useUiRender(): UiRenderHelper;