/** * Generic container for entity objects that provides standard properties for display and selection state. * Used for consistent entity representation in lists, dropdowns, and selection components. * * @template T - The type of data contained within the entity container */ export interface EntityContainer { /** * Unique identifier for the entity */ id: number; /** * Human-readable name for display in UI elements */ displayName?: string; /** * The actual entity data object */ data?: T; /** * Whether the entity is enabled/available for interaction * When false, the entity might be shown as disabled in UI */ enabled?: boolean; /** * Whether the entity is currently selected * Useful for multi-select interfaces */ selected?: boolean; }