@kieler/klighd-core
Version:
Core KLighD diagram visualization with Sprotty
44 lines • 1.64 kB
TypeScript
/** @jsx html */
import { VNode } from 'snabbdom';
type OptionChangeHandler<T> = (newValue: T) => void;
interface BaseProps<T> {
key?: string;
id: string;
name: string;
value: T;
description?: string;
onChange: OptionChangeHandler<T>;
}
type CheckOptionProps = BaseProps<boolean>;
/** Render a labeled checkbox input. */
export declare function CheckOption(props: CheckOptionProps): VNode;
interface ChoiceOptionProps extends BaseProps<string> {
availableValues: string[];
availableValuesLabels?: string[];
}
/** Render a labeled group of radio inputs. */
export declare function ChoiceOption(props: ChoiceOptionProps): VNode;
interface RangeOptionProps extends BaseProps<number> {
minValue: number;
maxValue: number;
stepSize: number;
/** Same as onChange() but to be executed on each input, i.e. when the slider is held down instead of when it's let go. */
onInput?: OptionChangeHandler<number>;
}
/** Render a labeled range slider as input. */
export declare function RangeOption(props: RangeOptionProps): VNode;
type TextOptionProps = BaseProps<string>;
/** Renders a labeled text input. */
export declare function TextOption(props: TextOptionProps): VNode;
/** Renders a named separator. */
export declare function SeparatorOption(props: {
name: string;
key?: string;
}): VNode;
interface CategoryOptionProps extends BaseProps<boolean> {
children?: (VNode | '') | (VNode | '')[];
}
/** Renders a labeled options group. */
export declare function CategoryOption(props: CategoryOptionProps, children: VNode[]): VNode;
export {};
//# sourceMappingURL=option-inputs.d.ts.map