///
type Predicate = (v: TInput) => boolean;
type Handler = (v: TInput) => TOutput;
interface Match {
when: (predicate: Predicate, handler: Handler) => this;
run: () => Output;
otherwise: (handler: Handler) => this;
}
declare function match(value: TInput): Match;
export { type Handler, type Match, type Predicate, match };