import { type Reference } from "@knyt/artisan"; import { type ResourceRenderer, type ResourceRendererHost } from "@knyt/weaver"; import { type LifecycleDelegate, type LifecycleDelegateHost } from "./LifecycleDelegate.ts"; import type { ReactiveController, ReactiveControllerHost } from "./ReactiveController.ts"; /** * A controller that manages the hydration of a state reference. * * @alpha This is an experimental API and will change in the future. */ export declare class HydratedReferenceController implements ReactiveController, ResourceRenderer, LifecycleDelegate> { #private; readonly value$: Reference; constructor(host: ReactiveControllerHost, options: HydratedReferenceController.Options); hostRender(): import("@knyt/weaver").ElementBuilder, HTMLTemplateElement, "markup"> | null; hostBeforeMount(): void; hostConnected?(): void; } export declare namespace HydratedReferenceController { type Options = { /** * A unique identifier within the parent node, * used to locate the script element containing the serialized state data. * Ensure this name is unique among siblings to prevent conflicts. * It is required for retrieving the correct script element during hydration. */ name: string; /** * The direct parent node where the script element will be rendered. */ parent: Reference.Maybe; /** * The reference to add hydration functionality to. */ ref: Reference; }; /** * A host that meets all of the requirements for hydrated state controllers, * without the need for customized integration. */ type CompleteHost = ReactiveControllerHost & ResourceRendererHost & LifecycleDelegateHost; } //# sourceMappingURL=HydratedReferenceController.d.ts.map