Sequence NODE_167
MediumCreate a Discriminated Union for API Status
TypeScript
Technical Specification
Create a discriminated union type representing loading, success, and error states of an API request.
Input/Output Samples
Input:status: 'success', data: T
Output:Valid success state
Optimal Logic Path
type ApiLoading = { status: "loading" };
type ApiSuccess<T> = { status: "success"; data: T };
type ApiError = { status: "error"; error: string };
type ApiState<T> = ApiLoading | ApiSuccess<T> | ApiError;Architectural Deep-Dive
Discriminated unions help model finite states and enable exhaustive checks in switch statements.