// Shared types for panel state management

/**
 * Generic discriminated union for async panel states.
 * Provides type-safe handling of loading, success, and error states.
 */
export type PanelState<T> =
  | { status: "idle" }
  | { status: "loading" }
  | { status: "success"; data: T }
  | { status: "error"; error: string };
