@lunit/oui
Version:
Lunit Oncology UI components
50 lines (49 loc) • 1.39 kB
TypeScript
import { FreeTextProps } from '../FreeText';
import type { AnalysisBarProps } from '../AnalysisBar';
import type { PresentationElementSize, PresentationSymbol } from '../presentations.types';
import { StatisticProps } from '../Statistic';
export interface ToggleControlSpec {
componentType: 'toggle';
title: string;
size?: PresentationElementSize;
symbol?: PresentationSymbol;
color?: string;
checked: boolean;
tooltip?: (StatisticProps | FreeTextProps)[];
content?: StatisticProps[];
bar?: AnalysisBarProps;
}
interface PixelAnnotationSpec {
name: string;
dimension?: string;
dimensions?: string[];
}
interface CellAnnotationSpec {
name: string;
}
interface GridAnnotationSpec {
name: string;
}
interface CutOffLabelProps {
color: string;
labelIndex: number;
}
interface TargetSpec {
visualizationType: string;
annotationId?: string;
annotation: PixelAnnotationSpec | CellAnnotationSpec | GridAnnotationSpec | string;
label?: string;
labelId?: string;
labels?: (string | CutOffLabelProps)[];
color?: string;
colors?: string[];
}
export interface ToggleControlProps extends ToggleControlSpec {
isParent?: boolean;
isDimmed?: boolean;
disabled?: boolean;
target?: TargetSpec;
isMaster?: boolean;
onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;
}
export {};