import type { Orientation } from "@kobalte/utils"; import { type Accessor, type Setter, createContext, useContext, } from "solid-js"; export interface SegmentedControlContextValue { value: Accessor; defaultValue: Accessor; orientation: Accessor; root: Accessor; selectedItem: Accessor; setSelectedItem: Setter; } export const SegmentedControlContext = createContext(); export function useSegmentedControlContext() { const context = useContext(SegmentedControlContext); if (context === undefined) { throw new Error( "[kobalte]: `useSegmentedControlContext` must be used within a `SegmentedControl` component", ); } return context; }