import type { AnyProps, ElementBuilder, KnytDeclaration, ViewBuilder } from "@knyt/weaver"; import type { PropertiesDefinition } from "../../types.ts"; import type { ComponentController } from "./ComponentController.ts"; /** * @deprecated This is an experimental API that will change in the future. */ export type Component

= { (): ViewBuilder; }; export declare namespace Component { /** * Extracts props for a component from its properties definition. */ type Props, E extends Element> = Partial & E>; /** * @internal scope: workspace */ type FromPropertiesDefinition, E extends Element> = Component, E>; type RendererFn

= (this: ComponentController, payload: RendererPayload) => KnytDeclaration; type RendererPayload

= { props: P; children?: KnytDeclaration; Host: ComponentController.HostFn; }; type LifecycleFn

= (this: ComponentController, host: ComponentController) => RendererFn; type RootInput = ElementBuilder; } //# sourceMappingURL=Component.d.ts.map