Type Alias $SelectionOptions

$SelectionOptions: {
    $else?: unknown;
    $then?: unknown;
    selection?: "predicate" | "filter";
}

🧰 type util

Options for selection (if-then-else) logic.

The word "selection" refers to the basic elements in structural programming: sequence, selection, and iteration.

Type declaration

  • Optional$else?: unknown
  • Optional$then?: unknown
  • Optionalselection?: "predicate" | "filter"

    Specifies which default selection logic to use.

    filter returns T when the condition is met, and returns never otherwise.

    predicate returns boolean depends on the condition.

    Note that setting $then and $else overrides the default selection logic.

type YourType<
T,
$Options extends YourType.$Options = YourType.$Branch
> = ...

namespace YourType {
export type $Options = $SelectionOptions
export type $Branch = $SelectionBranch
}