Import
import { Root } from "@typed/ui/RadioGroup";Signatures
export declare function Root<const Options extends RootOptions, const Host extends HostResult = never>(options: Options, host?: Dom.HostOverride<Dom.RenderHostProps<Options, RootInternalProps<Options>>, Options["content"], Host>): Fx<RenderEvent, Renderable.Error<Options | Host>, Renderable.Services<Options | Host> | Scope.Scope | RenderTemplate>;Examples
import { html } from "@typed/template";
import { component } from "@typed/ui/Component";
import * as RadioGroup from "@typed/ui/RadioGroup";
export const DeliveryChoice = component(function* () {
const state = yield* RadioGroup.makeState({ value: "standard" });
const collection = yield* RadioGroup.makeCollection();
return RadioGroup.Root({
state,
collection,
label: "Delivery speed",
content: html`
<label>${RadioGroup.Item({
state, collection, id: "delivery-standard", name: "delivery", value: "standard",
})} Standard delivery</label>
<label>${RadioGroup.Item({
state, collection, id: "delivery-express", name: "delivery", value: "express",
})} Express delivery</label>
`,
});
});Other public imports
These import paths expose the same declaration. Each page retains its own public name and signature.