import { LearningOutcomeLevels } from '../LearningOutcomeBadges'; export declare enum Progress { notStarted = "notStarted", inProgress = "inProgress", completed = "completed" } export type SizeType = 'small' | 'normal'; export interface TileProps { hover: boolean; progress: Progress; size: SizeType; } interface LearningOutcomeTileDetailsProps { id: string; level: LearningOutcomeLevels; outcome: string; percentComplete: number | undefined | null; latestScore?: number | undefined | null; } export interface LearningOutcomePopoverDetailsProps { id: string; level: LearningOutcomeLevels; outcome: string; percentComplete: number | undefined | null; latestScore?: number | undefined | null; highestScore?: number | undefined | null; } interface WithHoverAndWithPopover { learningOutcomeDetails: LearningOutcomePopoverDetailsProps; hover: true; popover: true; } interface WithHoverAndWithoutPopover { learningOutcomeDetails: LearningOutcomeTileDetailsProps; hover: true; popover: false; } interface WithoutHoverAndWithoutPopover { learningOutcomeDetails: LearningOutcomeTileDetailsProps; hover?: false; popover?: false; } export type LearningOutcomeTileProps = { onClick?: () => void; size?: SizeType; } & (WithHoverAndWithPopover | WithHoverAndWithoutPopover | WithoutHoverAndWithoutPopover); export {};