// Generated by bynkc — do not edit by hand.
// commons test

import { Ok, Err, Some, None, type Result, type Option, type ValidationError } from "./runtime.js";

export type Status =
    { readonly tag: "Pending" }
  | { readonly tag: "Active" }
  | { readonly tag: "Done" };

export const Status = {
  Pending: { tag: "Pending" } as Status,
  Active: { tag: "Active" } as Status,
  Done: { tag: "Done" } as Status,
};

export function describe(s: Status): string {
  switch (s.tag) {
    case "Pending": {
      return "waiting";
    }
    case "Active": {
      return "running";
    }
    case "Done": {
      return "finished";
    }
  }
  throw new Error("non-exhaustive match");
}

